我有几个Silverlight实用程序和控件项目,我在我的Web应用程序中使用了几个不同的应用程序。这些都在同一解决方案中进行。每个Silverlight应用程序都有自己的页面。
示例设置
CommonResources 我为这些项目设置了强名称键并创建了extmap,但dll仍然在xaps中。该版本在assembly.cs中定义为1.0.0.0。
CommonResources 1.0.0.0 {public key here} Silverlight.Common.CommonResources.dll
这些都是参考Utilities和CommonResources - ManageFoo - ManageBar - 等等
我可以组装缓存实用程序和CommonResources dll吗?
答案 0 :(得分:1)
我不明白为什么你不能在这种情况下。事实上,它似乎是理想的候选人。
您需要确保为Utilities和CommonResources dll生成extmap
个文件。该文件如下所示:
<?xml version="1.0"?>
<manifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<assembly>
<name>System.Windows.Controls.Data.DataForm.Toolkit</name>
<version>2.0.5.0</version>
<publickeytoken>31bf3856ad364e35</publickeytoken>
<relpath>System.Windows.Controls.Data.DataForm.Toolkit.dll</relpath>
<extension downloadUri="System.Windows.Controls.Data.DataForm.Toolkit.zip" />
</assembly>
</manifest>
并且具有以下形式的名称:
<dllname>.extmap.dll
并且必须与dll本身位于同一位置。
答案 1 :(得分:1)
您可以尝试将一个XML文件(例如,名为Common.CommonResources.extmap.xml)添加到CommonResources项目,并将“Copy to Output Directory”设置为“Copy if newer”,其中包含以下内容:
<?xml version="1.0"?>
<manifest xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<assembly>
<name>Common.CommonResources</name>
<version>*.*.*.*</version>
<publickeytoken>*</publickeytoken>
<relpath>Common.CommonResources.dll</relpath>
<extension downloadUri="Common.CommonResources.zip" />
</assembly>
</manifest>