2011-09-04 53 views
0

我有一个使用外部Silverlight DLL的VS2010 SL4项目。该项目本地化有多个RESX文件,并且该DLL也是。我通常包括我的解决方案,外部DLL如下:通过本地化的DLL导入部署SL4应用程序

1)在我的解决方案,如创建一组虚拟文件夹(比如进口的DLL被命名为Sample.dll):

/Lib/Sample/Debug 
    /Lib/Sample/Release 

2)创建相同的文件夹结构,文件系统和调试下,复制和释放DLL的各个版本,所以现在我找到以下文件:

/Lib/Sample/Debug/Sample.dll 
    /Lib/Sample/Release/Sample.dll 

3)添加到所有客户端项目,在解决一个参考/Lib/Sample/Debug/Sample.dll

4)打开与所添加的参考每个项目的.csproj文件,并改变以$(配置)路径的调试一部分,所以,正确的调试/发布版本为Build过程中吸收。

现在的问题是:在我的SL4解决方案中,我可以按照相同的步骤导入与语言无关的DLL。但是它的卫星资源呢?例如,导入的DLL的法语版本是在子文件夹fr-FR下构建的,并且名为Sample.resources.dll。我应该如何正确包含它?即使我尝试手动添加它在编译的XAP文件夹下FR,它将被忽略和应用程序回落到它的中性文化......

回答

0

我想我找到了,这里有一个概括对他们来说可能是兴趣:

  1. 打开的.csproj文件,并确保你在添加所有所需的语言(用分号分隔)。例如,如果您支持fr-Fr add <支持的文化> fr-Fr </SupportedCultures >

  2. (不得不手动做到这一点,我认为1,应该是足够了):编译一次,打开你的XAP(将其重命名为.zip和开放),并添加如果不存在的元素像< AssemblyPart源=” fr-FR/Sample.resources.dll“/ >为每个导入的卫星提供资源。

还是谢谢!

相关问题