0
私は、.NETコンパイラプラットフォームでソリューション内のすべてのクラスを変更するツールを開発しています。そのためには、すべてのプロジェクトにアセンブリ参照を追加する必要があります。"well-formatted"アセンブリリファレンスをRoslynに追加
var addedRef= MetadataReference.CreateFromFile(@"d:\Stuff\MyAssembly.dll")
.WithProperties(new MetadataReferenceProperties(MetadataImageKind.Assembly));
var sol = newSolution.AddMetadataReference(projectId, addedRef);
しかし残念ながら、それは.csprojファイルに次のエントリを生成:
現在、私はこのコード行を使用する代わりにその
<Reference Include="..\Stuff\MyAssembly.dll" />
を、私はしたいのですが厄介な回避策があるもちろん
<Reference Include="MyAssembly.dll" />
:私.csprojでこれを見XMLとして.csprojファイルを解析し、手動で挿入...しかし、私は本当にこの1つを避けるために、.NETコンパイラプラットフォームがあるので。
事前にお世話になりました!
は、私はちょうどロスリンのGitHubのページでこの問題を発見しました。私はXML形式の回避策を実行します。 これは将来修正される予定です。 – MDoobie