【问题标题】:SharePoint Feature Activation - Value does not fall within the expected rangeSharePoint 功能激活 - 值不在预期范围内
【发布时间】:2010-06-15 23:02:16
【问题描述】:

我已经开始编写一个简单的功能来创建网站栏和内容类型。如果我尝试这样激活该功能,它会给我错误值不在预期范围内,并且没有什么帮助。如果我删除 ContentType 标记,该功能会很好地激活,并且我可以看到新创建的 Account 站点列。知道 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>

【问题讨论】:

    标签: sharepoint moss wss


    【解决方案1】:

    事实证明,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>
    

    【讨论】:

      【解决方案2】:

      可能是您的内容类型 ID 中的大写“X”吗?内置的都是小写的,所以这可能是值得一看的。

      服务器日志是否为您提供有关 SharePoint 正在寻找但在此处找不到的任何提示?

      【讨论】:

      • 更改 x 的大小写并没有影响
      【解决方案3】:

      我在使用生成的 GUID 时遇到了类似的错误消息,我忘记从中删除破折号(即使用 0x0100042061F1-2366-45d8-A7DE-5B5078E87080 而不是 0x0100042061F1236645d8A7DE5B5078E87080)

      有关内容类型 ID 的更多信息,请查看 WSS 3.0 SDK 或此 MSDN 文章:http://msdn.microsoft.com/en-us/library/aa543822.aspx

      【讨论】:

        【解决方案4】:

        在我的例子中,我有一个基于任务类型的简单内容类型和一个额外的自定义字段。 vsewss 部署是如此 hack,以至于它无法打包或部署解决方案。由于这是一个如此简单的部署,我只是用 stsadm 命令编写了一个批处理文件来完成它。

        可以在 andrew connell MVP 页面上找到安装功能的批处理文件示例。你刚才 删除并重新创建 sp 功能目录下的功能目录 (12 hive\template\features\) 在那里复制功能和清单文件 cd 到 12 hive\bin 目录 stsadm -o activatefeature -filename \feature.xml -force stsadm -o activatefeature -文件名\feature.xml -url iis重置

        这还没有失败。不能对 vsewss 或 where-ever-plex 中的任何其他软件包实用程序说同样的话

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-09
          相关资源
          最近更新 更多