我需要替換SharePoint上現有列表上的視圖表單。這必須在一個功能中完成,並且我不擁有模式到列表,所以我不能簡單地更新xml。在SharePoint中,將表單添加到功能中的現有列表
我的功能將文件添加到在Elements.xml的名單:
<Module Name="Replacement Form" Path="" Url="Lists/ListName">
<File Url="ReplacementDispForm.aspx" />
</Module>
和功能更新顯示形式的具體內容類型的功能激活功能接收器:
SPList list = web.Lists[listName];
SPContentType type = list.ContentTypes[typeName];
type.DisplayFormUrl = formUrl;
type.Update();
一切正常。問題是更新功能 - 因爲頁面包含Web部件,升級等導致頁面然後有一個額外的Web部件 - 共享點只需添加Web部件定義,即每個部署添加+1 Web部件。
所以我試圖刪除功能停用代碼的文件,但它簡單的錯誤,該文件無法刪除:
string name = "Lists/ListName/ReplacementDispForm.aspx";
SPFile file = web.GetFile(name);
file.Delete();
的file.Delete是該行與SPException「莫非錯誤不刪除這個文件夾'。我不確定是否這是因爲該文件未被正確添加到列表中,或者我的刪除代碼不正確?