【发布时间】:2011-07-11 22:31:21
【问题描述】:
Sharepoint Designer 有一项功能允许您将 Web 部件列表转换为 XSLT 数据视图(右键单击 SPD 中的 Web 部件并单击“转换为 XSLT 数据视图”)。我需要能够模仿使用此过程创建的控件(据我所知,它应该是 Microsoft.Sharepoint.WebPartPages.DataFormWebPart)。我的主机不允许使用 SPD,因此此 Web 部件必须是开箱即用的或捆绑到 WSP 中。不幸的是,我没有找到方法来做到这一点。
我尝试过的事情:
在 SPD 中将 Web 部件另存为 .webpart,然后将其部署为自定义 Web 部件。尝试将 Web 部件添加到我的网站时出现错误“找不到类型或不安全”(类似的东西)。 Microsoft.Sharepoint.WebPartPages.DataFormWebPart 不安全?
通过浏览器创建 DataViewForm Web 部件并添加与使用 SPD 转换的 Web 部件一起存储的相同 XSLT/参数代码。添加代码似乎没有效果(没有任何反应)。
出于测试目的,我使用 SPD 将列表 Web 部件转换为 XSLT 数据视图,然后通过浏览器修改 XSLT/Parameter 代码只是为了看看会发生什么,它运行良好。我认为这至少提供了一个线索,表明粘贴这样的代码应该可以工作..
我的目标是能够创建一个类似这样的菜单系统(使用 spd 创建它):http://blog.pathtosharepoint.com/2009/01/15/a-drop-down-menu-the-sharepoint-way/
【问题讨论】:
-
取得了一些进展。删除 .webpart 中的 ViewFlags 值,然后通过浏览器添加 .webpart 工作(否则我得到一个视图无效错误)。对于相同的 .webpart 的 wsp 部署,我仍然会收到未找到类型的错误
-
将 viewflags 修复应用到 .webpart 并通过 wsp 部署它会给我一个新错误“无法显示 Webpart ...服务器在尝试从数据源”
-
您使用的是 SharePoint 2007 还是 2010?如果是 2007 年,我很惊讶主机会允许 .wsp 部署但不允许 SharePoint Designer 访问。你看过fpweb.com吗
-
看起来修改 ViewFlags(只是将其设置为空)就足够了。附加错误是由于 webpart 代码中的列表 guid 不正确。更改 ViewFlag 属性后,它可以通过 wsp 部署和通过浏览器导入的 .webpart 工作。
标签: sharepoint sharepoint-designer