【问题标题】:How do I import model class in view from not reference dll如何从非参考 dll 中导入模型类
【发布时间】:2012-10-29 15:33:38
【问题描述】:

对不起,我的英语不是我的母语。

我正在编写一个对大型医疗系统的网络访问。

使用 ASP.NET MVC 4。碰巧模型和控制器在另一个 dll 中,当 web 应用程序启动时加载了什么。控制器在 Unity 容器中注册,一切正常。

但是在 View 中直接使用模型类是不行的。 Razor 视图引擎找不到它们的命名空间。

如何解决?如何使用加载到内存中但没有 mvc-project 引用的 ViewEngine 命名空间库?

提前感谢您的建议。

【问题讨论】:

标签: c# asp.net asp.net-mvc razor asp.net-mvc-4


【解决方案1】:

有两种方法可以将命名空间添加到 ASP.NET MVC 中的 Razor 视图。

方法一

第一种方法是在 .cshtml 文件中使用 @using 语句,它只将命名空间导入当前文件。

示例:-

@using Namespace1
@using Namespace2.SomeClass

方法二

第二种方式是在你项目的View目录的web.config中定义这些命名空间。

例子:-

<system.web.webPages.razor>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
    .
    <!-- can more more here... -->
  </namespaces>
</pages>

或者你也可以像这样添加你的自定义命名空间:

<add namespace="Custom.Yasser" />
<add namespace="Custom.Mohsin" />

Source

【讨论】:

  • 感谢您的回答,但这不起作用,因为我在库中的命名空间,未在 mvc-project 中引用。即时视图解释显示错误。
猜你喜欢
  • 1970-01-01
  • 2011-10-07
  • 1970-01-01
  • 1970-01-01
  • 2018-05-01
  • 1970-01-01
  • 2011-08-08
  • 2013-06-15
  • 1970-01-01
相关资源
最近更新 更多