VseWSS站点模板为功能列表添加了50多个功能

时间:2011-06-14 16:17:11

标签: sharepoint sharepoint-2007 wss

我使用VseWSS 1.3创建并部署了MOSS站点定义

我安装网站定义并创建一个新网站,一切正常。但是,当任何人进入该WebApplication的任何站点(在任何网站集中)并转到功能列表时,所有这些功能都在列表中。

我有大约15种内容类型,15种基于这些内容类型的列表,每种类型都有自己的实例和ItemRecievers。你可以想象这是列表中的很多功能。我的Sharepoint管理员看到了这个并且崩溃了......

他希望看到像您看到的MOSS Enterprise功能等单个条目,它可以激活我的解决方案的所有功能。我看到有人提到了“功能包”一词 - 与此相关但我不知道这是否仅仅是他们的术语。

我该怎么做?这可以很容易地完成VseWSS还是我必须手动进入并破解IDE生成的文件?

詹姆斯: - )

2 个答案:

答案 0 :(得分:4)

VseWSS并不适合制作解决方案 - 它可以提取解决方案的元素,但往往(在我有限的经验中)设置,就像它们都将成为独立的功能一样。

不幸的是,你的管理员是对的。你得到的东西 - 那些内容类型,列表定义和列表实例 - 是很多功能元素。单个Feature可以包含多个,通常位于名为“elements.xml”的文件中。对此有一个很好的描述:

http://msdn.microsoft.com/en-us/library/ms460318(v=office.12).aspx

(注意,在Visual Studio 2010中,这些元素是visual studio项目中的“SharePoint项目”。但我离题了)

我总是倾向于使用VseWSS来创建我需要的文件 - 我的列表定义等 - 然后将这些文件复制到WSPBuilder项目中进行打包,准备安装。如果你没有使用过WSPBuilder,我推荐它用于SP2007开发 - 虽然它在很大程度上取决于Visual Studio自己的SP2010工具。需要一点理解,但是你会意识到如果你只是将文件复制到正确的位置,你就可以轻松地构建你的解决方案。

(您应该在WSP文件中部署解决方案。始终在WSP文件中部署解决方案。)

(另外,您不应该'破解'任何文件,只需在文件系统上重新排列它们,以便WSPBuilder正确打包它们。请参阅WSPbuilder文档。)

答案 1 :(得分:1)

一个简单的选项是将要素元素修改为隐藏,并将主要要素创建为具有激活依赖关系的可见要素。这意味着一旦激活主要功能,所有依赖功能都将自动激活。

http://blogs.msdn.com/b/jjameson/archive/2007/03/22/scope-dependencies-for-sharepoint-features.aspx