Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.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 - Fatal编程技术网

C# 更改程序集名称阻止生成解决方案

C# 更改程序集名称阻止生成解决方案,c#,visual-studio,C#,Visual Studio,我正在使用visual studio 2015 我有一个WPF应用程序,在一个解决方案中包含5个项目 我需要将其中3个的名称更改为类似(helper03.dll而不是helper.dll,UIResources03.dll而不是UIResources.dll和Utility03.dll而不是Utility.dll)(我需要更改输出dll名称,而不是项目名称本身) 当我从属性窗口更改程序集名称并尝试重新生成时,visual studio会给我错误,他找不到helper.dll、UIResource

我正在使用visual studio 2015 我有一个WPF应用程序,在一个解决方案中包含5个项目 我需要将其中3个的名称更改为类似(helper03.dll而不是helper.dll,UIResources03.dll而不是UIResources.dll和Utility03.dll而不是Utility.dll)(我需要更改输出dll名称,而不是项目名称本身) 当我从属性窗口更改程序集名称并尝试重新生成时,visual studio会给我错误,他找不到helper.dll、UIResources.dll和Utility.dll visual studio始终查找原始名称 我进行了一些搜索,发现我必须手动更改每个dll项目的.csproj文件,但实际上我什么都不懂 我发现了这样的东西:

 <AssemblyName Condition=" '$(MyAssemblyName)' != '' ">$(MyAssemblyName)</AssemblyName>
$(MyAssemblyName)
然后在msbuild任务中传递MyAsseblyName。 我找不到如何使用msbuild传递程序集名称

你能详细告诉我怎么做吗
提前非常感谢

您的解决方案中对更改项目的所有引用是否都是“项目引用”?或者这些引用中的一些是通过浏览程序集添加的?所有项目都在我的解决方案中被加载和引用,并被其他项目引用,这意味着UIResources.dll是我的解决方案中的项目,并在所有其他项目中被引用,helper.dll和Utility.dll也是项目,在我的解决方案中引用到项目本身而不是dll文件我制作的简单解决方案包含许多dll和wpf项目我发现当我更改Assembly Name属性时,它编译得很好,wpf引用中的问题。当我将UIResources.dll重命名为UIResources03.dll时,我还需要将所有项目中的wpf引用更改为xmlns:UIres=“clr namespace:UIResources;assembly=UIResources03”,而不是在我的整个解决方案中的xmlns:UIres=“clr namespace:UIResources;assembly=UIResources”,这很烦人,是否有一种自动方法可以在更改程序集名称时自动重命名这些声明,而无需使用查找和替换?请后退一步:为什么您需要更改程序集名称?这就足够了吗?是的,这是我发现的唯一解决方案,我正在创建共享dll项目的独立插件。当我更新这些基础项目并创建新插件时,基础应用程序加载一个插件的基础文件,忽略其余插件,因为它们具有相同的名称,我所有的插件都会自动引用错误的插件,导致我的应用程序崩溃或提供错误的数据,