部署新的Web部件

时间:2008-10-27 21:52:05

标签: sharepoint deployment web-parts

我一直在尝试关注以下信息:

Long URL clipped to stop breaking the page

http://msdn.microsoft.com/en-us/library/ms415817.aspx

或多或少具有相同的说明。我一直在将.dll文件从构建复制到Sharepoint站点的BIN目录。

当我点击Web部件库并点击新文章时,两篇文章都说Web部件应该显示在列表中。

我已经尝试了所有可能的方法,但我的网络部分不会出现在该列表中。我错过了某个步骤吗?是否有我应该考虑的权限? Sharepoint究竟如何识别出有一个新的Web部件。它只是将程序集放在BIN目录中,还是在web.config的安全列表中添加控件?

我已将其添加到安全控制列表中。我尝试了各种不同的组合,但没有任何效果。

我是否需要将.DLL程序集重命名为其他内容?

对于我的生活,我无法理解这一点。

5 个答案:

答案 0 :(得分:3)

我相信你需要在webPart目录的“新”部分中显示WP的最小值,你需要在“bin”文件夹中的dll(web目录中的bin,而不是12个hive :))或在GAC和安全控制条目中。我会验证安全控制条目:
Assembly = dll的名称
NameSpace = well ...您的WebPart类所在的NameSpace
TypeName =您的webPart类的名称

您可以使用通配符NameSpace和TypeName,以确保您到达目的地:

... Namespace="*" TypeName="*" ...

我还建议签署程序集并输入PublicKeyToken = ...

另外,尝试将信任级别设置为WSS_Medium或Full。

如果这不起作用,您可以尝试将.webpart文件添加到Web目录中的wpCatalog文件夹中。

编辑:澄清

答案 1 :(得分:3)

这必须是您的程序集与安全控制条目的web.config中输入的内容不匹配。

safecontrol条目区分大小写 - 最小的错误将停止显示在Web部件库的“新建”列表中。

还要确保编辑正确的web.config! :-)另一个常见的问题是你的网络课程必须公开。

希望这有帮助

尼克·斯旺

答案 2 :(得分:3)

您是否尝试过使用Microsoft的WPPackager tool?自从v2003以来我没有触及SharePoint,我知道有一个方便的工具可用于该平台的WP部署。我提供了一个链接,但1)我记不起它的名字了,2)我不确定它是否是你的SharePoint版本的有效安装路径。

答案 3 :(得分:1)

哇,你让我难过......我会尝试手动部署其他第三方“免费”网页部分,看看你是否可以让它们出现。这个网站有几个: http://www.sharepointblogs.com/mkruger/archive/2007/06/26/free-sharepoint-web-parts-3rd-party.aspx

您确定已设置:[assembly: AllowPartiallyTrustedCallers] 在AssemblyInfo文件中?

我很惊讶没有其他人对此表示赞同。我想下一步是尝试将其部署为功能/解决方案。

这是一个简单的hello world wp还是你在做更多的事情?

说实话,我开始相信这是你的wss / moss配置/设置阻碍了你的努力。您是否曾成功将WP部署到您的农场? ......这是VPC开发农场还是生产?

答案 4 :(得分:1)

过去两周我一直在创建一些Web部件,但我还没有使用Web部件库的“新Web部件”部分。相反,我创建了一个.dwp文件(例如MyWebPart.dwp),该文件或多或少是描述Web部件的XML文件,我手动将其导入到库中。

我的.dwp文件的格式通常如下所示:

<?xml version="1.0" encoding="utf-8"?>
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" >
  <Title>My Sample Web Part</Title>
  <Description>This web part displays "Hello World" on the page.</Description>
  <Assembly>My.Assembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3ed03eac7f647a61</Assembly>
  <TypeName>My.Assembly.MyWebPartClassName</TypeName>
  <!-- Specify initial values for any additional base class or custom properties here. -->
</WebPart>

这当然假设您已将此程序集添加为“安全控制”。编译程序集并将其移动到SharePoint计算机的bin / GAC后,返回Web部件库,单击“上载”,然后上载.dwp文件。上传后,您必须指定一些属性。

假设你的网页部分存在于你的.dll中,那么你应该看到它已添加到图库列表中,你可以预览它或在那时将它添加到页面中。