我已经开始编写一个简单的功能来创建网站列和内容类型。如果我尝试激活此功能,它会给出错误值不在预期范围内并且没有任何帮助。如果我删除ContentType标记,该功能就会激活,我可以看到新创建的帐户网站列。知道ContentType的错误是什么吗?
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Field
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account"
Type="Text"
Group="Accounts">
</Field>
<ContentType
ID="0X010100"
Name="Account Doc"
Description="Account Doc"
Version="0"
Group="Account Types">
<FieldRefs>
<FieldRef
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account" />
</FieldRefs>
</ContentType>
</Elements>
答案 0 :(得分:3)
事实证明,SharePoint对ContentType标记的ID属性中的尾随 00 不满意。更改为01可以解决问题,或者只是在00之后在末尾添加GUID:
<ContentType
ID="0x010100C8813FB7C4814B44BA7FD679120EF6F5"
Name="Account Doc"
Description="Account Doc"
Version="0"
Group="Account Types">
<FieldRefs>
<FieldRef
ID="{345C9562-F0D9-4327-853B-5072E296823A}"
Name="Account"
DisplayName="Account" />
</FieldRefs>
</ContentType>
答案 1 :(得分:1)
它可能是您的内容类型ID中的大写“X”吗?内置的是小写的,所以可能需要注意。
服务器日志是否为您提供有关SharePoint正在查找但未在此处找到的任何提示?
答案 2 :(得分:1)
使用生成的GUID时,我有一个类似的错误消息,我忘记删除破折号(即使用0x0100042061F1-2366-45d8-A7DE-5B5078E87080而不是0x0100042061F1236645d8A7DE5B5078E87080)
有关内容类型ID的更多信息,请查看WSS 3.0 SDK或此MSDN文章:http://msdn.microsoft.com/en-us/library/aa543822.aspx
答案 3 :(得分:1)
就我而言,我有一个基于任务类型的简单内容类型,还有一个额外的自定义字段。 vsewss部署非常糟糕,无法打包或部署解决方案。由于这是一个如此简单的部署,我只是用stsadm命令写了一个批处理文件来完成它。
可以在andrew connell MVP页面上找到要安装功能的批处理文件的示例。你刚才 删除并重新创建sp功能目录下的功能目录(12 hive \ template \ features \) 在那里复制功能和清单文件 cd到12 hive \ bin目录 stsadm -o activatefeature -filename \ feature.xml -force stsadm -o activatefeature -filename \ feature.xml -url IISRESET
这还没有失败。对于vsewss或任何其他来自where-ever-plex的包实用程序,不能说相同