我已经制作了一个listdefinition,我已将其添加到web范围的功能中,我已将其添加到sitedefinition中的WebFeatures中。在我的sitedefinition中,我添加了一个列表视图Web部件,它将显示通过listdefinition创建的列表。我的问题是,当我将列表的名称添加到列表视图Web部件中的List属性时,如下所示:
<View List="OrderList" BaseViewID="1" WebPartZoneID="Footer" WebPartOrder="2">
</View>
创建新子站点的过程因此而失败。我有另外两个列表以完全相同的方式添加到sitedefinition
<View List="Documents" BaseViewID="1" Type="HTML" WebPartZoneID="Footer" WebPartOrder="1">
</View>
<View List="108" BaseViewID="3" WebPartZoneID="Footer" ContentTypeID="0x012001" WebPartOrder="4">
</View>
唯一的区别是这两个列表是标准的sharepoint文档库和讨论板。如果我删除自定义列表的列表视图Web部件,整个流程可以正常工作,但是一旦我添加它,整个过程就会失败。
我已经通过VS2010自己的listdefinition模板等创建了listdefinition,但我还没有碰过任何东西。仅更改了列表实例中的名称,并确保在Elements.xml和Schema.xml文件中匹配所有内容
答案 0 :(得分:1)
ListInstance的Url属性是什么?
因为View元素的List属性必须与ListInstance中的Url匹配。例如,如果ListInstance定义为:
<ListInstance
FeatureId="00000000-0000-0000-0000-000000000000"
TemplateType="0000"
Title="My Test List"
Url="Lists/OrderList">
</ListInstance>
那么你的观点必须是:
<View List="Lists/OrderList" BaseViewID="1" WebPartZoneID="Footer" WebPartOrder="2">
</View>