Web サイト テンプレートを含む WSP ファイルを有効にしました。これは機能し、ソリューション ギャラリーでソリューションを確認できます。そのテンプレートに基づいて Web サイトを作成しようとすると、表示されません。しかし、「ステータス: アクティブ化」と表示されます。
次に、手動で無効にして再度有効にしようとしました。突然、私のテンプレートの名前に「2」が追加された新しいテンプレートが表示されます。
では、ここで正確に何が起こっているのでしょうか? 私のソリューションを有効にするコードは次のとおりです。
System.IO.MemoryStream input = new System.IO.MemoryStream(System.IO.File.ReadAllBytes(rootDirectory + "\\Templates\\Project.wsp"), true);
SPDocumentLibrary solutionGallery = (SPDocumentLibrary)web.Site.GetCatalog(SPListTemplateType.SolutionCatalog);
try
{
SPFile solutionFile = solutionGallery.RootFolder.Files.Add("Project.wsp", input);
SPUserSolution newUserSolution = web.Site.Solutions.Add(solutionFile.Item.ID);
}
catch { ... }