我在SharePoint2007中有一个网站。我使用控制适配器,特别是菜单和登录控件的适配器。这两个适配器驻留在一个已签名的程序集中,并将其部署到网站的bin文件夹中。
浏览器
<browser refID="Default">
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="NameofEnterprise.SecondName.Adapters.MenuAdapter" />
<adapter controlType="System.Web.UI.WebControls.Login"
adapterType="NameofEnterprise.SecondName.Adapters.LoginAdapter" />
</controlAdapters>
</browser>
有时我会得到以下例外情况,只是有时,让我们假设一天一次或两次:
Unable to create type 'NameofEnterprise.SecondName.Adapters.MenuAdapter'.
需要注意的是:这发生在我开发的机器上,我不知道是否有临时文件可以让框架疯狂。其次,我不知道框架是否在另一个程序集中查找适配器的类,因为我有一些程序集与此程序集具有相同的命名空间,也就是说:nameofenterprise.secondname.businesslayer、nameofenterprise.secondname.datalayer….
请告诉我有什么问题?我可以更具体地告诉框架程序集的名称吗(在浏览器中,您只写类和命名空间的名称)?
解决方案
最后,我采纳了你给我的两条建议。我认为第一件事就足够了,也就是说:
<system.web>
<compilation>
<assemblies>
<add assembly="*<Your assembly name here>*"/>
</assemblies>
</compilation>
</system.web>
但我在浏览器中包含了两个程序集和公共令牌:
<browser refID="Default">
<controlAdapters>
<adapter controlType="System.Web.UI.WebControls.Menu"
adapterType="NameofEnterprise.SecondName.Adapters.MenuAdapter", YourAssemblyName, Version=1.0.0.0, Culture=neutral, PublicKeyToken=YourPublicKeyToken"/>
</controlAdapters>