草庐IT

assemblybuilder

全部标签

c# - 动态创建类到cs文件?

我正在使用AssemblyBuilder创建一个复杂的类,稍后我会从中创建对象。然而,这个类是如何真正构建的还存在不确定性。那么有什么办法可以把这个动态创建的类写成cs文件供检查呢?我可以将dll文件写入磁盘,但我需要cs文件。 最佳答案 您可以使用以下方法将托管.NETdll反编译为C#代码DotPeek由JetBrains提供(免费,来源已关闭)ILSpy开源项目(麻省理工学院许可证源可在github获得)Reflector由RedGates(付费工具,来源已关闭)JustDecompile由Telerik(免费提供开源反编译引

c# - 来自动态代码的异常堆栈跟踪中的文件路径和行号错误

我们使用System.Reflection.Emit在运行时从源代码生成代码(是的——就像在编译器中一样)。我们使用MarkSequencePoint等向ILGenerator提供正确的符号信息,并在AssemblyBuilder上启用所有调试标志。程序集在编译它的同一进程中保存在内存中并直接执行。当使用VisualStudio调试器单步执行动态生成代码的源代码时,它实际上运行良好,并且VisualStudio似乎完全了解代码在文件和行号方面的来源。但是-当异常被生成的代码抛出时,System.Exception对象包含完全错误的堆栈跟踪。它们指向其他(有效但错误的)文件和行号。它得到

c# - 使用 AssemblyBuilder 构建资源程序集

场景:我想创建作为资源程序集的附属程序集。这个程序集里​​面只有编译过的资源(ResourceWriter)。目标是在VS之外创建资源程序集并将它们添加到应用程序中,这在我的C#应用程序中Atm我正在使用AssemblyBuilder创建程序集。它可以工作,但没有关于存储的程序集的信息。没有文化信息、key或其他任何东西。该程序集未被具有MissingManfifestResourceException的应用程序获取。:(如果可能,我想继续使用AssemblyBuilder或使用CodeDomProvider。问题:要将新的卫星组件添加到我的应用程序需要什么?有一个包含文化(en-US