**私は C# の経験がほとんどないトレーニング中の学生です。当社では、T4 テンプレート (C# VS2010) を使用したソリューションを開発しています。生成されたファイルは、VS 依存であるため、MSBuild でコンパイルできません。私の仕事は、ツール、ライブラリ、.dll ファイル、SDK、またはビルド時に VS を置き換えることができるものを見つけることです。それ以外の場合は、生成されたコードを VS に依存しないように変更する必要があります。これは、私にとって難しい作業だと思います。コードサンプル:
Project GetProjectContainingT4File(DTE dte) {
// Find the .tt file's ProjectItem
ProjectItem projectItem = dte.Solution.FindProjectItem(Host.TemplateFile);
// If the .tt file is not opened, open it
if (projectItem.Document == null)
projectItem.Open(Constants.vsViewKindCode);
if (AlwaysKeepTemplateDirty) {
// Mark the .tt file as unsaved. This way it will be saved and update itself next time the
// project is built. Basically, it keeps marking itself as unsaved to make the next build work.
// Note: this is certainly hacky, but is the best I could come up with so far.
projectItem.Document.Saved = false;
}
return projectItem.ContainingProject;
}
私はあなたの助けに感謝します.**