我正在使用 PostSharp 版本 2.1.6.4(也尝试了最新版本 2.1.7.35),有时 pdb 文件丢失,并且其中有一个 pssym 文件。
<?xml version="1.0" encoding="utf-8"?>
<Symbols xmlns="http://schemas.postsharp.org/2.0/symbols">
<Class Class="#1=T:[CrosscuttingLogging]CrosscuttingLogging.Attributes.LogMethodCallStatsAttribute" LimitedLicense="true" />
<Class Class="#2=T:[RequestLimiter]RequestLimiter.RequestCounterAttribute" LimitedLicense="true" />
</Symbols>
我在构建过程中运行了 procmon,据我所知postsharp.srv.4.0-x86.exe
进程同时移动 dll 和 pdb 文件obj\Debug
文件夹到obj\Debug\Before-PostSharp
文件夹,稍后在中生成一个新的dllobj\Debug
文件夹,但是新的 pdb 文件是not生成的.
这种情况发生在我的一些 dll 上(似乎是随机的),并且似乎不可靠,因为在其他机器上所有 pdb 文件都是正确生成的。
PostSharp 2.1.x 不支持 Visual Studio 2015 (.NET4.6/Roslyn)。
PDB 格式在 .NET 4.6 中发生了一些变化。我预计在 PDB 后处理期间 PostSharp 会出现异常,这就是 PDB 未复制到输出文件夹的原因。如果您使用的是VS2015,那么可能会发生此类问题。
解决方案是不要将 .NET4.6/Roslyn 与 PostSharp 2.x 一起使用,或者至少升级到 PostSharp 3.1。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)