为什么要素链接旧的DWP版本?
-
09-12-2019 - |
题
我使用Web部件部署了功能,装配1.0.0.0。然后我在解决方案中实现了一些更改,并将装配号更改为1.0.0.1。WebPart和功能版本已更改为1.0.0.2。
之后,我卸载了SharePoint的解决方案,而不是安装新版本。
现在我无法预览Web部件,因为SharePoint正在尝试链接到WebPart版本1.0.0.1,我得到“未知错误”。
这是我的feature.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<Feature
Id="E2E13BDD-D78E-4820-97FF-3248188EA22C" xmlns="http://schemas.microsoft.com/sharepoint/"
Title="CurrentNewsFeature"
Scope="Site"
Hidden="False"
Description="CurrentNewsFeature"
Version="1.0.0.2">
<ElementManifests>
<ElementFile
Location="CurrentNewsFeatureUserControl.ascx" />
<ElementFile
Location="CurrentNewsFeatureWebPart.dwp" />
</ElementManifests>
</Feature>
.
和我的currentnewsfeaturewebpart.dwp:
<?xml version="1.0" encoding="utf-8"?>
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2">
<Assembly>CurrentNewsFeature, Version=1.0.0.2, Culture=neutral, PublicKeyToken=1757a812a567b868</Assembly>
<TypeName>CurrentNewsFeatureWebPart</TypeName>
<Title>Sabre News From Blog</Title>
<Description>WebPart to display general news from a blog.</Description>
</WebPart>
.
我的解决方案有什么问题?如何重新部署此WebPart?
我有SharePoint版本2007。
解决方案
功能版本和装配版本是2个不同的东西,并且对彼此无关。基本上,感觉你试图增加装配的版本,并且很可能构建它的结果不是那个。
为“未知错误”这是由于Web应用程序的Web.config文件中未启用调试(搜索debug= false并替换为true和customErrors,因此也将callstack设置为true)。
您需要确保在您的.dwp文件中,您实际上引用了相应的程序集。使用任何反射器(不幸的是不免费)或通过VS命令提示sn.exe(http://msdn.microsoft.com/en-us/library/k5b5tt23(v=vs.80).aspx)提取全汇编名称,或直接转到GAC并从那里接受它。
希望它有所帮助, C:\ Marius
其他提示
,包括装配版本的.dwp(和.webpart)文件中的所有信息都是从WebPart Gallary选择此Web部件时加载Web部件和相应属性的蓝图,SharePoints WebPartManager将存储这些内容数据库中的设置(用户可能更新)。加载WebPart页面时,信息将从内容数据库中读取信息。
因此,如果更新程序集版版本,则添加到页面的所有现有实例都将尝试加载旧版本并失败,除非您在Web.config中添加了BindingRefects(请参阅 web部件版本控制随装配重定向)这就是为什么大多数SharePoint开发人员更新汇编文件而不是汇编Version 为什么