为什么我会遇到这个错误? “给定的组件名称或代码库无效。”
-
16-10-2019 - |
题
我创建并实施了 IHttpModule
接口以使用 Session_Start
SharePoint 2010中的活动(例如ASP.NET中的Global.asax)。我添加了 add
在我的web.config文件中标记 modules
(因为我使用集成模式),并且我还将DLL部署到GAC,但是我得到了此错误:
给定的汇编名称或代码库无效。 (Hresult的例外:0x80131047)
有人知道为什么会发生这种情况吗?
解决方案
问题在于我的模块标签中的Web.config文件中。
它必须是完整的汇编名称,而不仅仅是班级名称。
在C#术语中,它可以是assembly.fullname代码。
例如,我有一个类似于IHTTPMODULE的类:
public class StatisticsModule : IHttpModule
{
public void Init(HttpApplication context)
{
context.ReleaseRequestState += context_ReleaseRequestState;
}
public void Dispose()
{ }
}
该类放在shakib.Statistics名称空间中,因此对于此示例,应该在Web.config和“模块”部分中的模块标签,必须是这样的:
<add name="Statistics" type="Shakib.Statistics.StatisticsModule, Shakib.Statistics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=4d63664a8351e206" />