作为.NET开发人员,行
'<process name>' (Managed): Loaded 'Anonymously Hosted DynamicMethods Assembly'
你可能很熟悉。我的问题很简单明了:这个'匿名托管的DynamicMethods程序集'究竟是什么?我可以手动加载(预加载)吗?如果是这样,怎么样?可以通过Assembly.Load(...)完成吗?
答案 0 :(得分:30)
System.Reflection.Emit包含允许您通过发出IL指令来创建动态生成的代码的类。 DynamicMethod和AssemblyBuilder类是这样做的工作。 IL通常从程序集加载,但在动态生成IL时没有程序集。但是,需要一个程序集对象作为IL代码的容器,而AppDomain.DefineDynamicAssembly()创建一个“假”代码。这就是您在调试器通知中看到的内容。
你不能使用Assembly.Load(),动态创建程序集。
答案 1 :(得分:2)
这适用于DynamicMethods,因此也适用于表达式。
您无法手动加载。
答案 2 :(得分:0)
我猜这是一个在运行时发出的程序集。由于不需要将程序集保存到磁盘,因此可能无法手动加载它(在这种情况下,当代码完成将程序集发送到内存中时 - 它将直接使用程序集中定义的类型 - 无需加载任何东西)
有关详细信息,请参阅documentation in msdn。
最佳
答案 3 :(得分:0)
这是一个老问题,但我最近才遇到。 我的代码运行良好,我记得我之前做过的事情已升级到最新的telerik更新。 然后,我升级了当前的解决方案,当我运行我的应用程序时,出现错误... Html帮手“ Html.TextboxFor”,“ Html.PasswordFor”周围的错误弹出窗口很好,