gpt4 book ai didi

.net - 在库 : How to add DLL reference to component when component is located in project hosting the library? 中进行代码内编译

转载 作者:行者123 更新时间:2023-12-02 00:33:16 24 4
gpt4 key购买 nike

我正在编写一个解析和编译 Razor 模板的类库(例如:lib)。类库将在包含原始 Razor 模板的项目(例如:proj)中引用。

类库引用了一个 3d 派对组件(例如:comp),我无法(许可方面)将其打包到库中。这不是问题,因为 proj 将始终包含 comp 引用。

但是在 lib 中,我需要将 comp 添加到引用的程序集中:

var outputAssemblyName = Path.GetTempPath() + Guid.NewGuid().ToString("N") + ".dll";
CompilerParameters compilerParameters = new CompilerParameters(ReferencedAssemblies, outputAssemblyName);
compilerParameters.ReferencedAssemblies.Add("System.dll");
compilerParameters.ReferencedAssemblies.Add("System.Core.dll");
compilerParameters.ReferencedAssemblies.Add("3dpartycomp.dll"); //<<<<<<<<<<<<

comp dll 位于 proj/bin 文件夹中时,找不到该 dll。此外,proj 没有 /release 文件夹,因为它是一个网站。

当 3d party 组件位于托管库的项目中时,如何添加对它的引用?

最佳答案

添加引用时,请指定第三方程序集的完整路径(如@"C:\App\bin\3rdpartycomp.dll"),因为编译器只在框架目录(甚至不是 GAC)中查找没有路径的引用指定的。您可以使用 Server.MapPath 获取 bin 目录的位置。

关于.net - 在库 : How to add DLL reference to component when component is located in project hosting the library? 中进行代码内编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5805138/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com