[英]WSPBuilder and Code behind for a Sharepoint Masterpage
我在Visual Studio中為自定義母版頁創建了文件背后的代碼。 我把所有東西都手工掛鈎了。 安全控制和自定義cas策略。 一切正常!
然后,我想使用WSPBuilder將其放入共享點解決方案中,以實現更好的部署。 我創建了WSP解決方案,添加了我的類文件,並將輸出目錄更改為bin文件夾。 然后,我構建了解決方案並進行了部署,請確保更改母版頁上的頁面指令以反映新的程序集名稱。
現在,當我去查看共享點站點時,出現錯誤,指出“安全異常”錯誤說明
“異常詳細信息:System.Security.SecurityException:該程序集不允許部分受信任的調用方。”
這讓我感到很困惑,因為它可以作為Visual Studio類文件部署到網站的bin目錄中。 但是,當我將其放入SharePoint解決方案中時,它就會崩潰! 我嘗試添加
'[程序集:System.Security.AllowPartiallyTrustedCallers]'
到AssemblyInfo.cs,但這沒有幫助。
有人對此有經驗或有任何建議嗎?
編輯:我還應該提到,背后的代碼正在嘗試訪問共享點列表。
您仍然不需要包括SafeControls條目才能使其正常工作,例如:
<SafeControl Assembly="[FullAssembly Name]"
Namespace="[YourMasterPageNamespace]"
TypeName="*"
Safe="True" />
或在WSPBuilder配置中:
<add key="BuildSafeControls" value="True" />
從來沒有見過..但是我懷疑沒有多少人在SharePoint的母版頁中創建代碼隱藏(Microsoft也不是!)。
我不知道您要構建什么,但是我可能會使用母版頁中包含的服務器控件來實現它。
AllowPartiallyTrustedCallers始終為我的服務器控件修復它。
您對web.config文件設置的信任是什么? 嘗試完整。
您可以嘗試檢查自己是否使用了完全合格的五部分名稱,包括正確的公鑰標記和程序集的名稱空間。
您在打電話給第三方大會嗎?
最近,我遇到了一種情況,我正在使用第三方程序集,但其代碼中沒有AllowPartiallyTrustedCallers 。 當我嘗試使用組裝時,它會失敗。
您確定該程序集已被意外部署到bin而不是已部署到GAC嗎? 如果有兩個程序集,則GAC中的一個優先。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.