繁体   English   中英

如何在web.config中引用DLL?

[英]How to reference a DLL in the web.config?

我在BIN文件夹中有一个DLL,我需要在web.config中引用它,否则我会遇到恼人的错误:

描述:编译服务此请求所需的资源时发生错误。 请查看以下特定错误详细信息并相应地修改源代码。

编译器错误消息:CS0234:名称空间“Microsoft”中不存在类型或命名空间名称“ServiceModel”(您是否缺少程序集引用?)

这个DLL不在GAC中,为此我不能使用

<assemblies><add ...

所以我的猜测是我需要使用configSections

<configSections>
  <section name="Microsoft.System.Web" 
           type="Microsoft.System.Web,
                 Version=3.0.0.0, Culture=neutral,
                 PublicKeyToken=10633fbfa3fade6e "/>
</configSections>

什么应该是正确的代码?

除非您使用的程序集具有强名称,否则只需将其放在bin目录中即可。

您提到的configSection不是用于添加对程序集的引用。 这是在web.config中定义配置节。 因此,您可以通过向configsSections添加section标签来添加名为exampleSection的配置部分。 这将允许您稍后在web.config中创建名为“exampleSection”的配置节。

在configSections部分定义中存在程序集引用的原因是每个配置部分特定于它为其提供配置数据的程序集。 configSection可能特定于网站程序集本身(在这种情况下,这是您要指定的程序集),或者它可能是站点使用的其他程序集。 通过创建configSection,您可以对在一个部分中相关的设置进行分组,而不是在appsettings中将所有应用程序中的设置混合在一起。

如果您提供了有关您遇到问题的更多信息,也许我们可以提供帮助。 什么是组件以及它是如何使用的?

有趣的是我发现如果dll及其所有依赖项都在bin目录中,即使不在.SLN文件或web.config中也可以使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM