0

有没有人使用 WSP Builder 打包使用 Config Store (http://www.codeplex.com/SPConfigStore)并部署到 web 应用程序的 bin 目录的解决方案?

当我尝试在我的代码隐藏文件中引用配置存储时,我得到了这个异常......

System.Security.SecurityException:该程序集不允许部分受信任的调用者

我已将部分受信任的调用者属性添加到我的项目中

[assembly: AllowPartiallyTrustedCallers()]

以及我的方法上的共享点权限属性

[SharePointPermissionAttribute(System.Security.Permissions.SecurityAction.Demand, Impersonate = true)] 
[SharePointPermissionAttribute(System.Security.Permissions.SecurityAction.Demand, ObjectModel = true)]

但这似乎没有做任何事情,我还指定了具有正确 IPermission 的自定义 CAS 策略

<IPermission class="Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" version="1" ObjectModel="True" UnsafeSaveOnGet="True" Unrestricted="True" />

仍然没有成功,肯定其他人已经这样做了,我一定是错过了什么

我正在使用 WSP Builder 1.0.5 版。

4

2 回答 2

1

您已将 [assembly: AllowPartiallyTrustedCallers()] 添加到您的程序集中,因此您的程序集将允许部分受信任的调用者调用它。但是 ConfigStore 本身没有该属性。

是否可以将您的 DLL 添加到 GAC?(简单的办法)。或者也将 [assembly: AllowPartiallyTrustedCallers()] 添加到 ConfigStore 项目中。

于 2009-06-09T09:46:55.097 回答
0

您是否将程序集添加到 web.config SafeControls 部分?

<SafeControl Assembly="Microsoft.Office.Server.Search, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" Namespace="Microsoft.Office.Server.Search.WebControls" TypeName="*" Safe="True" />

此外,您可能需要降低 web.config 中的信任级别:

<trust level="WSS_Minimal" originUrl="" />

请参阅 MSDN 文档了解ASP.Net 和 SharePoint 信任级别

于 2009-06-09T09:05:16.363 回答