如何在剃刀视图页面导入命名空间?


当前回答

我认为为了在剃刀视图中导入命名空间,你只需要添加以下方式:

@using XX.YY.ZZ

其他回答

根据您的需要,您可以使用以下方法之一:

在视图的第一行添加“using your.domainName;”(如果是的话) 仅在特定视图中需要) 如果在所有后续视图中需要 然后在_ViewStart.cshtml中添加"using your.domainName;"你可以找到 更多相关信息见:Where and how is _ViewStart。CSHTML布局文件链接? 或在视图web中添加程序集引用。如何在Asp中实现跨所有视图的@using。Net MVC 3?

终于找到了答案。

@using MyNamespace

VB。Net:

@Imports Mynamespace

如果你想在整个应用程序中包含一个命名空间,可以看看@ravy amiry的答案。

在ASP。你可以用这段代码在Global.asax.cs中导入一个命名空间到你所有的razor视图

Microsoft.WebPages.Compilation.CodeGeneratorSettings.AddGlobalImport("Namespace.Namespace");

我希望在RTM中可以通过Web完成。配置部分。

“使用MyNamespace”工作在MVC3 RTM。希望这能有所帮助。

我找到了这个http://weblogs.asp.net/mikaelsoderstrom/archive/2010/07/30/add-namespaces-with-razor.aspx,它解释了如何向所有剃刀页面添加自定义名称空间。

基本上你可以做这个

using Microsoft.WebPages.Compilation;
public class PreApplicationStart
{
   public static void InitializeApplication()
   {
       CodeGeneratorSettings.AddGlobalImport("Custom.Namespace");
   }
}

并将以下代码放入您的AssemblyInfo.cs中

[assembly: PreApplicationStartMethod(typeof(PreApplicationStart), "InitializeApplication")]

在global.asax中,InitializeApplication方法将在Application_Start之前执行