【发布时间】:2010-10-22 15:42:21
【问题描述】:
我在 SharePoint 中创建了一个应用程序页面,以托管在 LAYOUTS 目录中。该页面继承自 LayoutsPageBase,目前没有其他代码。 ASPX 文件设置为从此类/程序集继承。很简单。
我的问题是我想将我的程序集部署到应用程序 BIN 目录(不是 GAC)并使用 CAS 权限策略允许它在 SharePoint 中执行。但是,此时,每当我部署页面时,都会出现此异常:
请求失败。在 System.Reflection.Assembly._GetType(字符串名称,布尔 throwOnError,布尔 ignoreCase) 在 System.Web.UI.TemplateParser.GetType(字符串类型名,布尔忽略大小写,布尔 throwOnError) 在 System.Web.UI.TemplateParser.ProcessInheritsAttribute(字符串 baseTypeName,字符串 codeFileBaseTypeName,字符串 src,程序集程序集) 在 System.Web.UI.TemplateParser.PostProcessMainDirectiveAttributes(IDictionary parseData)
在我遇到权限错误的所有其他情况下,异常会指示我缺少哪个特定权限(例如 SqlClientPermission 或 FileIOPermission)。
我知道这个问题与 CAS 相关,因为当我部署到 GAC 时它工作正常。
我当前的 CAS 权限如下所示:
我目前的想法是它与 LayoutsPageBase 类有关,因为当我将其更改为从基本 System.Web.UI.Page 继承时,该页面可以正常使用我的 CAS 策略。
我在我的程序集上使用了 Microsoft 提供的 permcalc 工具,并添加了它发现的权限,但问题没有解决。
所以我的冗长问题是这样的:是否有人部署过使用 CAS 策略从 SharePoint 的 LayoutsPageBase 继承的应用程序页面,以及您需要在 CAS 策略中指定哪些权限才能使其正常工作?
【问题讨论】:
标签: sharepoint