如何将类库包含到(非MVC)ASP.net Razor网站中,以便我不必使用using语句?

cod*_*000 5 c# razor

我有一个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=&quot;data source=LT5V6V8W1\SQLSERVERROCKS;initial catalog=sandbox;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" 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=&quot;data source=LT5V6V8W1\SQLSERVERROCKS;initial catalog=sandbox;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" 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引擎的基本网站.

teo*_*kot 5

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)

在这里,您可以添加其他命名空间,它将在所有视图上.