c# – 如何以编程方式将程序集引用添加到项目中?

我一直在尝试使用Roslyn来解析解决方案文件,并以编程方式为解决方案中的每个项目添加自定义程序集引用.

我尝试使用以下代码片段来执行相同的操作:

//The name of the DLL is customLib.dll
var reference = MetadataReference.CreateAssemblyReference("customLib");
project = project.AddMetadataReference(reference);

但是,它在创建MetadataReference时遇到FileNotFoundException.

所以,我的问题是:如何指定Roslyn需要检查指定dll的路径?

谢谢.

解决方法

MetadataReference.CreateAssemblyReference用于获取GAC中程序集的引用.试试这个:
project = project.AddMetadataReference(new MetadataFileReference("<path>"));

相关文章

项目中经常遇到CSV文件的读写需求,其中的难点主要是CSV文件...
简介 本文的初衷是希望帮助那些有其它平台视觉算法开发经验的...
这篇文章主要简单记录一下C#项目的dll文件管理方法,以便后期...
在C#中的使用JSON序列化及反序列化时,推荐使用Json.NET——...
事件总线是对发布-订阅模式的一种实现,是一种集中式事件处理...
通用翻译API的HTTPS 地址为https://fanyi-api.baidu.com/api...