【问题标题】:Silverlight 4 Assembly Caching for Project ReferencesSilverlight 4 项目引用的程序集缓存
【发布时间】:2011-09-28 19:10:57
【问题描述】:

我有几个 Silverlight 实用程序和控制项目,我在我的 Web 应用程序中的几个不同应用程序中重复使用这些项目。这些都在同一个解决方案中工作。每个 Silverlight 应用程序都有自己的页面。

示例设置

  • 实用程序
  • 通用资源 我为这些项目键入了强名称并创建了 extmap,但 dll 仍在 xaps 中。版本在 assembly.cs 中定义为 1.0.0.0。

    公共资源 1.0.0.0 {这里的公钥} Silverlight.Common.CommonResources.dll

这些都参考了 Utilities 和 CommonResources - 管理富 - 管理栏 - 等等

我可以汇编缓存实用程序和 CommonResources dll 吗?

【问题讨论】:

    标签: silverlight silverlight-4.0


    【解决方案1】:

    您可以尝试在 CommonResources 项目中添加一个 XML 文件(例如名为 Common.CommonResources.extmap.xml),并将“复制到输出目录”设置为“如果较新则复制”,内容如下:

    <?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>
    

    【讨论】:

    • 将副本更改为输出目录有效!感谢您的快速回答!
    【解决方案2】:

    我不明白为什么你不能在这种情况下。事实上,它似乎是理想的候选人。

    您需要确保为 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 可以,但是 fzlin 使用 VS 自动执行该设置,所以我接受了他的回答。
    • @Aligned - 没问题。这就是公认的答案 - 展示对您帮助最大的答案。
    猜你喜欢
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-11
    • 1970-01-01
    相关资源
    最近更新 更多