感謝您的期待。使用C#,我如何「包含」文件到項目中?
我有一個小程序根據一些項目信息和數據庫連接生成一個新的.NET解決方案。
作爲此過程的一部分,我使用edmgen2自動生成ADO.NET實體數據模型/ .edmx
文件。
此代碼正常工作,並生成添加到Windows中項目文件夾中的.edmx等。
的問題
當我打開生成的溶液中,隨後含有.edmx
的DAL項目,我必須再展排除的文件,單擊鼠標右鍵,然後手動include
的的.edmx。
這並不是什麼大問題,但如果在生成.edmx
後自動將其包含在VS Project中,我可以調用代碼將會更好。
這可能嗎?
ADDING下面的解答:下面
的回答讓我去,但我卻發現,我不能在我改變其他XML文件通常的方式.csproj的XML操作。您必須使用msbuild
命名空間。這裏是我工作:
var csproj = XDocument.Load(SolutionFolder + @"\SomeProject.csproj");
XNamespace msbuild = "http://schemas.microsoft.com/developer/msbuild/2003";
var itemGroups = csproj.Descendants(msbuild + "ItemGroup");
var itemGroup = itemGroups.FirstOrDefault(x => x.Descendants(msbuild + "Compile").Any());
var item = new XElement(msbuild + "Compile");
item.SetAttributeValue("Include", "ApplicationEntityModel.edmx");
itemGroup.Add(item);
csproj.Save(SolutionFolder + @"\SomeProject.csproj");