2013-02-13 42 views
1

我剛剛繼承了一個SharePoint項目,我想重構並採取所有常見/可重用代碼,並將其置於解決方案中的單獨項目中。該解決方案已經有好幾個項目,並且幾乎所有項目都在解決方案中的一個或多個其他項目之間存在依賴關係。SharePoint部署可重複使用的代碼

我希望所有的depencies(SPMetal類,靜態方法,utils的等),擬投入一個項目,使有需要的通用代碼只有一個參考(無碼克隆)

我重構該項目,現在我正嘗試將此代碼部署到SharePoint服務器(通過VS2012將我的本地開發服務器以及通過WSP的生產服務器)。我最初嘗試添加Common.dll中的所有其他項目的「附加組件」列表(在Package文件),但是這已經引起所有的水安全計劃有以下錯誤失敗的部署:

Cannot add the specified assembly to the global assembly cache 

這是因爲Common.dll正在被owstimer和一些其他服務使用,並且無法刪除。

我的下一個念頭,就是將代碼部署爲特徵,然後讓所有的依賴於它的其他功能,但是,我不知道如何做到這一點。有什麼辦法可以讓一個只包含類的功能?

有沒有更好的方法來使多個SharePoint項目可用的通用代碼?

回答

0

根據錯誤,它看起來像你沒有強烈地簽署「Common.dll」程序集。因此無法在GAC中安裝。