SharePoint 2010 创建列表视图时出现错误

3
我有一个通过Visual Studio 2010创建的自定义列表定义。 我想使用Web界面创建此列表的日历视图。 然而,当我尝试创建视图时,我会收到一个错误消息:
错误
无法完成此操作。
请重试。
关于问题:
  • 当我使用Fiddler2运行时尝试复制此错误时,我在使用HTTP POST动词访问/_vti_bin/owssvr.dll?CS=65001时看到404未找到的响应。
  • ULS日志中没有记录任何错误。
  • 如果我创建一个新的自定义列表,并尝试通过添加两个日期列并创建日历视图来复制该问题,则一切正常。
  • 定义列表的schema.xml文件相当大,有近25个字段。
  • 我正在使用新的、编辑和显示表单的自定义模板。
  • 我已定义了一个新的自定义视图,显示schema.xml中的列子集。

有没有人知道跟这个问题相关的任何“陷阱”或需要关注的地方在我的列表定义中?

有没有人遇到过这个问题,并知道如何解决?

如果以上都失败了,我还能做什么来调试它?

为避免在此问题中溢出大代码块,您可以在此处查看我的列表定义:

Elements.xml - http://pastebin.com/97ucAedZ

Schema.xml - http://pastebin.com/2brpMJgT

ListInstance Elements.xml - http://pastebin.com/gnCXVpmh


你用来创建视图的用户账户自SharePoint安装后是否被删除并重新创建? - ukhardy
不行。我无法创建视图,点击“创建视图”页面上的“确定”后会出现错误信息,视图也无法被创建。 - Kyle Trauberman
发布您自定义列表的<ListTemplate>节点,也许我们可以在其中发现一些看起来不对劲的东西。 - James Love
当您手动从ListTemplate创建列表和视图时,是否会出现错误(与Feature生成的ListInstance相反)?(不确定您是否已经说明了这一点)。 - James Love
如果我手动创建一个列表,然后在该列表上创建一个视图,那么我就不会收到错误消息。如果我创建一个全新的列表定义、部署它,然后尝试在其上创建一个视图,我也不会遇到这个错误。 - Kyle Trauberman
显示剩余3条评论
2个回答

1

我同意moontear的观点。我认为你的内容类型ID是无效的。如果你是基于自定义列表模板构建的,我期望你的内容类型ID应该是:

<ContentType ID="0x0100781A2C74BF4bfd81AE710DB1EACAE745"
                   Name="$Resources:Item"
                   Group="$Resources:List_Content_Types"
                   Description="$Resources:ItemCTDesc"
                   Version="1">

如果要从Item继承,您应该先使用0x01然后是00,接着是一个Guid。如果您使用00而不是70,则字符数正确。

有关更多信息,请参见内容类型ID


我真的不确定那个“70”是怎么来的。我可能不小心删除了一些字符,然后在某个时候用其他东西填充了它们的结尾。我正在测试这个现在,如果它有效,我会让你知道的。 - Kyle Trauberman
成功了。感谢您和moontear的帮助! - Kyle Trauberman

0
在这种情况下,我通常会采取以下步骤:
  1. 在MOSS中手动创建列表/视图。
    将列表导出为模板,并尝试找出我的模板中的问题。
  2. 从干净的模板开始,逐个添加一个字段等,测试,重复直到出现错误。
你的xml看起来没问题,所以我认为这将是另一个MOSS的“坑”或“惊喜时刻”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接