Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用“复制本地”将程序集放置在不同的目录中_C#_Visual Studio 2010_.net Assembly - Fatal编程技术网

C# 使用“复制本地”将程序集放置在不同的目录中

C# 使用“复制本地”将程序集放置在不同的目录中,c#,visual-studio-2010,.net-assembly,C#,Visual Studio 2010,.net Assembly,我目前正在VisualStudio2010中从事一个C#项目,我需要使用一个程序集。我把它作为一个项目添加到我的解决方案中,并让它在本地生成并复制到我的主项目的输出文件夹中 问题是,为了整洁起见,我希望程序集放在bin/Debug/assemblies中,而不是bin/Debug中,并且此程序集的引用使用它 这有可能吗?只需在项目的属性中将输出路径设置为bin\Debug\assemblies,或者您喜欢的任何内容。这种“整洁”是一个非常糟糕的主意。CLR不知道在何处查找这些程序集,如果没有ap

我目前正在VisualStudio2010中从事一个C#项目,我需要使用一个程序集。我把它作为一个项目添加到我的解决方案中,并让它在本地生成并复制到我的主项目的输出文件夹中

问题是,为了整洁起见,我希望程序集放在bin/Debug/assemblies中,而不是bin/Debug中,并且此程序集的引用使用它


这有可能吗?

只需在项目的属性中将输出路径设置为bin\Debug\assemblies,或者您喜欢的任何内容。

这种“整洁”是一个非常糟糕的主意。CLR不知道在何处查找这些程序集,如果没有app.exe.config文件,将无法找到它们。您需要提供一个带有命名子目录的
元素的文件。您还需要一个生成后事件来使用mkdir和xcopy创建目录以复制文件


如果这听起来像是太多的障碍而无法跨越,那是因为DLL地狱是你永远不想搞乱的东西。CLR和生成系统都强烈反对这样做。CLR认为只有两个地方是明确的,即GAC和包含启动EXE的目录。其他任何事情都需要额外的步骤来说服CLR您不是意外射中您的脚。

但是所有文件(包括应用程序exe)将被放置在
bin\Debug\assemblies
下。这不是他要求的吗?我知道OP要求只在
bin\Debug\assemblies
文件夹中放置一个程序集。