我有一个C#ASP.Net Razor(非MVC)网页......
@using QuickCodeLearning.Customers.Utilities;
@{
var cus = CustomerUtilities.GetCustomerInformation(1);
}
<html>
<head>
<title>
Display a Customer
</title>
</head>
<body>
<p>@cus.fname @cus.lname @cus.FavFruit</p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我通过using语句包含了一个类库(QuickCodeLearning.Customers.Utilities).
一切正常.
我的问题是我可以将这个类库添加到我的Web.Config文件中,这样我就不必在每个页面的顶部都有using语句了吗?
这是我的Web.Config档案......
<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="CustomersEntities" connectionString="metadata=res://*/CustomersEF.csdl|res://*/CustomersEF.ssdl|res://*/CustomersEF.msl;provider=System.Data.SqlClient;provider connection string="data source=LT5V6V8W1\SQLSERVERROCKS;initial catalog=sandbox;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
<system.web>
<authentication mode ="Windows"/>
<identity impersonate="true"/>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)
我尝试将<page> <namespace>添加到Web.Config文件中,如下所示...
<?xml version="1.0"?>
<configuration>
<pages>
<namespaces>
<add namespace="QuickCodeLearning.Customers.Utilities" />
</namespaces>
</pages>
<connectionStrings>
<add name="CustomersEntities" connectionString="metadata=res://*/CustomersEF.csdl|res://*/CustomersEF.ssdl|res://*/CustomersEF.msl;provider=System.Data.SqlClient;provider connection string="data source=LT5V6V8W1\SQLSERVERROCKS;initial catalog=sandbox;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
</connectionStrings>
<system.web>
<authentication mode ="Windows"/>
<identity impersonate="true"/>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)
但这不起作用.当我删除using语句时,页面停止工作.
我错过了什么?
更新:
答案(我肯定是正确的)对我不起作用.我的项目没有Views文件夹.当我向我的Web项目添加一个新文件夹并包含App.Config设置时,它无法解决我的问题.我关闭并重新打开Visual Studio.我重新启动了IIS.
我注意到当您使用Visual Studio 2012创建MVC项目时会创建一个views文件夹,但是我不在这里使用MVC站点.我有一个使用Razor引擎的基本网站.
在Web.Config文件Views夹中的文件(不是Web.Config项目根目录中的主文件)中,找到以下部分:
<system.web.webPages.razor>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
...
</namespaces>
</pages>
</system.web.webPages.razor>
Run Code Online (Sandbox Code Playgroud)
在这里,您可以添加其他命名空间,它将在所有视图上.