最近发布的.NET工具似乎支持在PDB中嵌入C#,这应该会改善进入第三方等的体验。运行csc /?
,我可以清楚地看到/embed选项:“Embed PDB 中的所有源文件。”但是,csproj 中似乎没有任何方法可以指定这一点。此外,似乎没有任何规定可以将任意开关传递给编译器,我将使用它来手动传递 /embed。
任何人都可以确认我没有错过任何内容并且目前缺乏对 /embed 的构建支持吗?这有问题吗(如果没有的话会去哪里)?任何建议的解决方法也将不胜感激。
EmbeddedFiles Item Group 支持它们,将其添加到您的 .csproj:
<Target Name="EmbedSources" BeforeTargets="CoreCompile">
<ItemGroup>
<EmbeddedFiles Include="@(Compile) " />
</ItemGroup>
</Target>
...这基本上就是
/嵌入选项的作用。
您可能还需要提供一个json 文件,以连接 PDB 中的源,不确定会自动发生。
DebugType
标签更改为
portable
。由此可以确保您的项目配置为在编译期间生成 PDB 文件。
<PropertyGroup>
<DebugType>portable</DebugType>
</PropertyGroup>