通过SharePoint 2010门户为TFS 2012创建自定义控件

时间:2013-09-13 19:01:14

标签: sharepoint-2010 tfs2012

我正在尝试使用适用于TFS 2012团队项目的SharePoint 2010 Web门户。大多数功能都有效,但我很难获得我们在SharePoint Project Portal站点中构建的自定义工作项控件。 (他们在Visual Studio中工作正常,我们还没有尝试让他们在默认的TFS Web Access门户中工作。)

我的问题是:

由于用于创建自定义属性的TFS Web Access方法已更新,该方法是否适用于SharePoint网站? (我对此表示怀疑,因为jQuery是必要的,默认情况下不包含在SP 2010中,但我想我会问。)

每当我尝试测试时,我得到的只是“错误:无法创建'FieldName'”,ULS日志中没有任何内容。有什么办法可以调试吗?

我的搜索中是否有可能错过的在线示例?

1 个答案:

答案 0 :(得分:0)

经过大量的挖掘和挫折,我终于得到了一个简单的控制工作。实际上,SharePoint 2010期望自定义控件的格式与Web Access 2010类似,而不是Web Access 2012.以下示例有助于:

http://code.msdn.microsoft.com/windowsdesktop/CSTFSWebAccessWorkItemMulti-ace1b01e

此外,如果您安装了2008 Team System Web Access(是的,2008),您将获得包含一些有用文档的Word文档。

以下是一些警告:

Word文档指出控件需要从IWorkItemControl和IWorkItemWebControl继承。由于IWorkItemWebControl包含IWorkItemControl所执行的所有字段,并且IWorkItemControl在引用.NET 4.5的DLL中声明(不适用于SharePoint 2010),因此我只引用了IWorkItemWebControl,它似乎可以工作。

该文档指出您的控件需要从System.Web.UI.Control继承才能工作,但UserControl不起作用。我必须继承其中一个WebControl才能使它工作。

自定义控件需要引用多个DLL的TFS 2012版本(在示例下载中列出),但我发现它们的唯一位置是SharePoint服务器上的GAC。所以我将它们从GAC复制到我的本地机器上进行开发。

部署很简单 - 您只需将.wicc文件和DLL放入“Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 14 \ TEMPLATE \ LAYOUTS \ Tswa \ CustomControls”。

如果我发现其他任何内容,我会在此发布。