当我在DeBUG中运行时,我使用#if DEBUG将调试信息写入控制台.
但是,当你最终得到一堆程序集时,有没有办法看看它们是如何构建的?获取版本号很简单,但我无法找到如何检查构建类型.
解决方法 有3种方式:private bool IsAssemblyDeBUGBuild(string filepath){ return IsAssemblyDeBUGBuild(Assembly.Loadfile(Path.GetFullPath(filepath)));}private bool IsAssemblyDeBUGBuild(Assembly assembly){ foreach (var attribute in assembly.GetCustomAttributes(false)) { var deBUGgableAttribute = attribute as DeBUGgableAttribute; if(deBUGgableAttribute != null) { return deBUGgableAttribute.IsJITTrackingEnabled; } } return false;}
或者使用assemblyinfo元数据:
#if DEBUG[assembly: AssemblyConfiguration("DeBUG")]#else[assembly: AssemblyConfiguration("Release")]#endif
或者在代码中使用#if DEBUG的常量
#if DEBUG public const bool IsDeBUG = true;#else public const bool IsDeBUG = false;#endif
我更喜欢第二种方式,所以我可以通过代码和windows资源管理器来阅读它
总结以上是内存溢出为你收集整理的c# – 如何确定程序集的构建方式全部内容,希望文章能够帮你解决c# – 如何确定程序集的构建方式所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)