最近发布的.NET工具似乎支持embedding C# in PDBs,这应该可以改善步入第三方等的体验.运行csc / ?,我可以清楚地看到/ embed选项:“在PDB中嵌入所有源文件“.
但是,似乎没有任何方法可以在csproj中指定它.更重要的是,似乎没有任何规定将任意开关传递给编译器,我将用它来手动传递/嵌入.
任何人都可以确认我没有错过任何内容,并且目前缺乏对/ embed的构建支持吗?这是否有问题(如果不是,它会去哪里)?任何建议的解决方法也将受到赞赏.
解决方法:
看起来roslyn任务应该通过EmbeddedFiles Item Group支持它们,方法是将它添加到.csproj中:
<Target Name="EmbedSources" BeforeTargets="CoreCompile">
<ItemGroup>
<EmbeddedFiles Include="@(Compile) " />
</ItemGroup>
</Target>
……这基本上就是/embed option does.
您可能还需要提供SourceLink
json file,以连接PDB中的源,不确定是否自动发生.