【问题标题】:models in separate assembly from asp.net mvc4 web project [closed]来自asp.net mvc4 web项目的单独程序集中的模型[关闭]
【发布时间】:2013-01-27 22:24:18
【问题描述】:

我有以下项目的解决方案:

  • App.Web.Private - 管理网络界面。
  • App.Web.Public - 最终用户公共界面。
  • App.Web.Core - 私有和公共接口的公共接口。

我想知道如何将我的模型与 publicprivate Web 界面分开并将它们放入 App.Web.Core ?

我尝试在 web.config 中添加命名空间,但似乎无法正常工作,我总是得到一个缺少程序集引用...

更新

注意:privatepublic 接口都引用了 App.Web.Core。这个问题与这种奇怪的行为有关,尽管参考已经完成,但项目看不到它。正如我在原始问题中提到的,我还在 web.config 中添加了引用。

更新 2

这是错误的屏幕截图:

【问题讨论】:

  • 这是一个非常不言自明的错误消息:您将模型移动到另一个项目,因此尝试使用模型的项目需要对该程序集的引用 包含模型。
  • 看懂了消息,问题是模型所在的项目已经被引用了……
  • 那么,这是编译时错误,还是运行时错误?
  • 这是运行时错误。
  • 我假设您收到了黄屏错误消息,是否可以让我们看到该消息?

标签: asp.net asp.net-mvc asp.net-mvc-4 model assemblies


【解决方案1】:

在您的解决方案中,右键单击引用,添加 App.Web.Core

【讨论】:

  • 谢谢,我已经更新了我原来的问题,因为那不是我的问题。
【解决方案2】:

在 Visual Studio 2010 中:

  • 右键单击“参考”,然后单击“添加参考...”。
  • 选择 App.Web.Core 项目并点击“确定”。

现在,当您想要使用 App.Web.Core 中的这些模型时,您还需要在类的顶部添加 using 语句。

示例:using App.Web.Core.Models;

【讨论】:

  • 谢谢,但我有数百个 razor 文件......而且我已经在 web.config 中有其他引用(来自 web 项目的同一程序集),我可以在不写 using 的情况下使用。
  • 也许这是您正在寻找的东西:stackoverflow.com/questions/4953330/…
【解决方案3】:

检查构建公共和私有项目所依据的 .Net 版本。 Project Core 可能位于旧版本的 .Net 上,而 Public 和 Private 位于新版本上。

要检查版本打开项目属性页面并验证。

【讨论】:

    【解决方案4】:

    尝试将@using App.Web.Core 添加到视图顶部。如果这行得通,那么你就会知道你的物理内容是正确的。那就去看看有没有错别字。

    【讨论】:

    • 真可惜!我的型号名称是Foo,我输入了Foos... 坏我...
    猜你喜欢
    • 1970-01-01
    • 2015-04-10
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 1970-01-01
    • 2011-07-19
    相关资源
    最近更新 更多