【问题标题】:Unable to deploy new SharePoint site template assembly version无法部署新的 SharePoint 网站模板程序集版本
【发布时间】:2010-10-19 10:25:20
【问题描述】:

我构建了我的 SharePoint 网站模板解决方案程序集,并成功将其部署到 SharePoint,版本为 6.4.0.2032。我做了一些测试,发现我的代码存在一些问题。我解决了这些问题。通过“setup.bat /uninstall”卸载了我的解决方案。将我的程序集重建到版本 6.4.0.2033。我再次成功安装了我的新模板,但在尝试将我的一个 web 部件添加到页面时,SharePoint 继续寻找我的程序集的旧版本。

我错过了一步吗?

这里是 C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\LOGS 中日志的 sn-p:

04/08/2009 13:04:58.18  w3wp.exe (0x0AA8)                           0x0BE4  Windows SharePoint Services     Web Parts                       8l4f    Monitorable Error importing WebPart. Assembly  SharePoint.Site, Version=6.4.0.2032, Culture=neutral, PublicKeyToken=db45c0486d0dc06d, TypeName. SharePoint.Site.MetadataSearch, SharePoint.Site, Version=6.4.0.2032, Culture=neutral, PublicKeyToken=db45c0486d0dc06d

【问题讨论】:

    标签: c# visual-studio-2008 sharepoint assemblies deployment


    【解决方案1】:

    当使用“setup.bat /uninstall”删除以前的版本时,我注意到 WebPart 的相应“.webpart”文件不会被删除。重新分解新版本时,这些“.webpart”文件不会更新,而是继续指向以前的程序集版本。

    要查看您的 Web 部件引用的程序集版本:

    1. 在 SharePoint 中打开顶级网站设置(网站操作 > 网站设置 > 转到顶级网站设置)
    2. 点击“图库”列下的“Web 部件”
    3. 单击 Web 部件旁边的“编辑”图标
    4. 单击“查看 XML”工具栏按钮

    您应该能够在编译的解决方案中找到相应的新“.webpart”文件(它应该引用您的新程序集)。然后只需将其上传到此 Web 部件库列表(记得勾选“覆盖现有文件”)

    如果找不到“.webpart”文件,您可以随时从“Web 部件库”下载副本并手动修改。

    希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      在 SharePoint 中,您有很多对程序集的引用。一些存储在磁盘上的文件中(布局文件中的页面引用),而另一些存储在内容数据库中(内容文件中的页面引用)。当您使用解决方案框架进行部署时,SharePoint 还会将 SafeControls 添加到 web.config 文件中。这些条目通过其强名称引用程序集。

      我的经验是,您应该避免更改 SharePoint 解决方案的程序集版本 - 这将为您省去各种麻烦。要跟踪程序集版本,您应该改用程序集文件版本。这不会导致 SharePoint 出错。

      我是否提到了解决方案升级?只需考虑在您的 Web 部件已添加到数十个页面的场中升级程序集。所有这些页面都将引用旧程序集,并且可能会在升级后导致未处理的错误。

      程序集文件版本属性在 AssemblyInfo.cs 文件中设置:

      [assembly: AssemblyVersion("6.0.0.0")]
      [assembly: AssemblyFileVersion("6.4.0.2033")]
      

      【讨论】:

        【解决方案3】:

        您的 web.config 文件引用了哪个版本? 仔细检查它是否是您期望的版本 (6.4.0.2033)。 做一个 IIsrest,然后再试一次。

        【讨论】:

        • web.config 正确,IIS 已重置,服务器已重新启动。下一个?
        猜你喜欢
        • 2018-01-06
        • 1970-01-01
        • 1970-01-01
        • 2016-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-13
        • 1970-01-01
        相关资源
        最近更新 更多