Visual studio Visual Studio安装程序--更改应用程序资源
基本上,我的应用程序在Resources.resx文件中有一个资源作为主窗口的标题。我将此绑定到我的主windows标题Visual studio Visual Studio安装程序--更改应用程序资源,visual-studio,visual-studio-2010,resources,installation,Visual Studio,Visual Studio 2010,Resources,Installation,基本上,我的应用程序在Resources.resx文件中有一个资源作为主窗口的标题。我将此绑定到我的主windows标题 Title={Binding Title, FallbackValue='My Generic Title'} 我有2个安装程序(每个客户一个)。我现在就是这样做的: 将特定标题设置为客户端A 编译应用程序 为客户端A生成安装文件 将特定标题设置为客户端B 编译应用程序 为客户端B生成安装文件 有没有办法将资源设置为我使用的安装程序项目的特定资源?然后,将该值更改回“默认”
Title={Binding Title, FallbackValue='My Generic Title'}
我有2个安装程序(每个客户一个)。我现在就是这样做的:
有没有办法将资源设置为我使用的安装程序项目的特定资源?然后,将该值更改回“默认”值?我认为您可以执行以下操作: 1) 创建两个名为
Resources.ClientA
和Resources.ClientB
的程序集。它们应该具有完全相同的内容(相同名称空间中的相同类),但对于相应的客户端,这些内容应该是特定于客户端的。例如,我添加了以下类只是为了说明:
// assembly for ClientA :
namespace Resources
{
public class Class1
{
public static string Text { get { return "Client A text"; } }
}
}
// assembly for ClientB :
namespace Resources
{
public class Class1
{
public static string Text { get { return "Client B text"; } }
}
}
2) 打开主项目文件(csproj)并添加:
<PropertyGroup>
<ClientToken>ClientA</ClientToken>
</PropertyGroup>
克利恩塔
3) 在下面的同一文件中添加引用:
<ItemGroup>
<ProjectReference Include="..\Resources.$(ClientToken)\Resources.$(ClientToken).csproj">
<Name>Resources.$(ClientToken)</Name>
</ProjectReference>
</ItemGroup>
资源。$(ClientToken)
现在,通过替换ClientToken
属性,您可以替换特定于客户端的程序集。您还可以将此属性指定为连续集成过程的一部分,但可能需要稍微修改csproj文件,以便它从外部获取此属性,并且仅当未设置此属性时,才设置一些默认值
另外,我不确定是否有更简单的方法来完成你的任务,可能有一些