string strMPageURL ="http://abcd.com/sites/forum/_catalogs/masterpage/MyCustomMasterPage.master";
SPFolder mPageFolder = spWeb.Folders["_catalogs"].SubFolders["masterpage"];
using (WebClient oWebClient = new WebClient())
{
SPFileCollection mPageFileCollection = mPageFolder.Files;
SPFile mPageFile = mPageFileCollection.Add(
"MyCustomMasterPage.master",
oWebClient.OpenRead(strMPageURL)
);
}
あなたは_catalogs /マスターページのフォルダにマスターページをアップロードしているようですが、実際に動作しますが、違いはそれがないローカルマシンからウェブから来たということです。
ローカルマシンからのファイルアップロードを使用してすぐに動作するように、マスターページをアップロードする予定がある場合は、これを行うことができます。
string strMPageLocation [email protected]"C://MyCustomMasterPage.master";
SPFolder mPageFolder = spWeb.Folders["_catalogs"].SubFolders["masterpage"];
using (FileStream mPageStream = new FileStream(strMPageLocation,FileMode.Open))
{
SPFileCollection mPageFileCollection = mPageFolder.Files;
SPFile mPageFile = mPageFileCollection.Add(
"MyCustomMasterPage.master",
mPageStream
);
}