我是Sharepoint 2010的新手,我正在尝试创建查找字段,将其添加到内容类型,并通过Visual Studio 2010 SharePoint项目将其添加到列表中。但我遇到了一些奇怪的问题。
我已按以下方式定义了查找字段:
<Field ID="{2A5567B7-1175-4E26-A4ED-382E4744D17A}" Type="Lookup" Name="SomeLookupField" List="Lists/SomeList" ShowField="ItemName" DisplayName="Some Field" Group="Custom Group" ReadOnly="TRUE" />
然后我通过FieldRef元素将它添加到ContentType。最后,List Definition包含Schema.xml中的相同元素
它正常工作,直到我尝试将我的网站保存为模板。 Sharepoint无法导出网站并显示错误:
Microsoft.SharePoint.SPException:导出名为“SomeLookupField”的站点字段时出错。在Microsoft.SharePoint.SPSolutionExporter.ExportFields(SPFieldCollection字段,字符串partitionName)
这是由错误引起的:
SPSolutionExporter:System.FormatException:Guid应该包含32个数字,包含4个破折号(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。在Microsoft.SharePoint.SPSolutionExporter.ExportField(SPField字段,SPWeb web)的Microsoft.SharePoint.SPSolutionExporter.GetFieldSchemaXml(SPField字段,SPWeb web,Boolean isFieldFromWeb,Boolean removeSealedAttribute)上的System.Guid..ctor(String g)处。
在我周围发现我发现查找字段ID不应包含大括号,如下所示:
<Field ID="2A5567B7-1175-4E26-A4ED-382E4744D17A"
我改变之后导出开始正常工作。但是,从Visual Studio重新部署现在已经中断,因为它在删除旧功能时不会删除该字段,并且在更新的功能激活时失败并显示错误:
部署步骤“激活功能”中出错:在当前网站集中找到了功能{235313d2-4091-4655-8b35-70b3ad31b9f4}中定义的ID为{2A5567B7-1175-4E26-A4ED-382E4744D17A}的字段或在一个子网站。
我想知道我的查找字段定义有什么问题?什么是定义查找字段的有效格式?