Roslyn问题 - 无法找到元数据文件System.Runtime.dll

时间:2018-02-07 23:20:29

标签: c# .net dll code-generation roslyn

我们使用CodeDomProvider在我们的应用程序中编译C#和VB代码。自从它出现以来,我们一直在使用Roslyn。我们目前使用的是Roslyn 1.0.8版。最近,我们开始收到此错误:

  

元数据文件   'C:\ WINDOWS \ system32 \设置\ systemprofile \应用程序数据\本地\装配\ DL3 \ 8GTGDQKQ.4QR \ V42JN801.7NM \ 36a4366e \ f1f27652_1972d301 \ System.Runtime.dll'   无法找到

我不是手动添加此引用。罗斯林似乎在任意添加这个引用。我已经尝试在我们的应用程序的bin文件夹中添加对System.Runtime.dll的引用,但问题不会消失。

我在这里记录了回购邮件的错误,但没有回复: https://github.com/dotnet/roslyn/issues/24630

还有其他人看过这个错误吗?有解决方法吗?为什么编译器在此路径上查找System.Runtime.dll?为什么不在我们的bin文件夹中使用DLL?

1 个答案:

答案 0 :(得分:0)

我找到了解决方法。如果我将文件System.Runtime.dll从我的bin文件夹复制到路径C:\ Windows \ system32 \ config \ systemprofile \ AppData \ Local \ assembly \ dl3 \ 8GTGDQKQ.4QR \ V42JN801.7NM \ 36a4366e \ f1f27652_1972d301程序集编译细

因此,Roslyn忽略了我告诉它System.Runtime.dll所在的路径,并期望在硬编码路径中找到DLL。这对我来说似乎是个错误。