2011-03-03 79 views
1

有可能通過創建一個文件鍵添加到Web.config:12/CONFIG/webconfig.name.xml (見http://msdn.microsoft.com/en-us/library/ee413929.aspx) 隨着內容:添加bindingRedirect到Web.config聲明在SharePoint 2007

<actions> 
<add path="configuration/SharePoint/SafeControls"> 
    <SafeControl 
     Assembly="CustomWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=123456789abcdefgABC" 
     Namespace="CustomWebPart" 
     TypeName="*" 
     Safe="True" /> 
</add> 
<add path="configuration/runtime/assemblyBinding"> 
    <dependentAssembly> 
    <assemblyIdentity name="CustomWebPart" publicKeyToken="123456789abcdefgABC" culture="neutral" /> 
    <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0" /> 
    </dependentAssembly> 
</actions> 

這個偉大的工程添加安全控件,但它好好嘗試似乎工作進行組裝重定向。有沒有人有一個想法,爲什麼這does not工作?是否可以只添加「配置/ SharePoint /」內的標籤?

回答

1

您無法在SharePoint 2007中的配置文件上添加綁定重定向(儘管您可以在2010年),因此您必須編寫代碼才能使用SPWebConfigModification執行此操作。

要小心,雖然它不容易 - 只需在SPWebConfigModification上搜索並查看結果的第一頁。

作爲一種替代方法,我必須問你爲什麼要這樣做 - 如果這只是版本控制的小改動(即v1.1> v1.2),那麼也許這不是最好的方法來做到這一點 - 改爲檢查出file assembly versioning

+0

感謝您指出。似乎沒有文件記錄綁定重定向不能用於SharePoint 2007中的配置文件。由於時間限制,我最終使用手動部署步驟來更改web.config。 下次我會看看SPWebConfigModification。雖然我猜想SPWebConfigModification將需要從功能接收器中使用,但我不能保證代碼將以具有足夠特權的用戶身份運行,以編輯web.config。 – Tim 2011-03-08 13:26:52