.net 如何以编程方式添加程序集引用

.net 如何以编程方式添加程序集引用,.net,build,reference,compilation,.net,Build,Reference,Compilation,下面是我的场景:我们计划自动化deltabuild过程,这意味着我需要创建一个工具来促进这个deltabuild过程 我需要做的是只编译那些有变化的文件。如何以编程方式添加程序集引用以引用其他dll,从而不需要编译其他dll?任何帮助都将不胜感激。您可以内省项目文件,并根据已更改的代码文件添加或删除项目引用。当然,这假定那些已更改的代码文件不依赖于要删除的引用。如果因为代码文件依赖于这些程序集而需要引用这些其他程序集,则需要引用来生成。您是指添加到解决方案中吗?这是.NET吗?好吧,很抱歉“添加

下面是我的场景:我们计划自动化deltabuild过程,这意味着我需要创建一个工具来促进这个deltabuild过程


我需要做的是只编译那些有变化的文件。如何以编程方式添加程序集引用以引用其他dll,从而不需要编译其他dll?任何帮助都将不胜感激。

您可以内省项目文件,并根据已更改的代码文件添加或删除项目引用。当然,这假定那些已更改的代码文件不依赖于要删除的引用。如果因为代码文件依赖于这些程序集而需要引用这些其他程序集,则需要引用来生成。

您是指添加到解决方案中吗?这是.NET吗?好吧,很抱歉“添加引用”这一误导性标题,但我的意思是,是否可以将程序集引用更改为指向已编译的dll(以编程方式),以便在我构建特定项目时,我们不需要编译那些未更改的文件。另外,您如何以编程方式添加或删除引用?是的,您可以编辑项目文件。项目文件只是一个xml文件,其中包含以文本形式写出的程序集路径。我建议您将此文本更改为指向硬盘上的显式DLL,而不是让它们引用解决方案中的其他项目。您可以编写一个程序来检测哪些文件已更改,并相应地更新引用。在此之后,您的程序可以对包含新项目文件的解决方案调用msbuild。哇,非常感谢。我将尝试以xml形式打开项目文件。使用XNL reader类,然后从那里进行编辑。我还将使用每个文件的校验和来检测更改。再次感谢这将帮助我做很多的deltabuild工具。