【问题标题】:Sharepoint Document Library Schema.xml CustomizationSharepoint 文档库 Schema.xml 自定义
【发布时间】:2010-03-25 15:27:12
【问题描述】:

您好我正在尝试将自定义字段添加到共享点文档库的 Schema.xml 中

这是我从博客中获取的代码

我必须在 ID 中输入 guid 才能这样做 我必须添加自己的 guid 还是必须查询 sharepoint 数据库并找到 guid 并将其粘贴到那里...

如果我必须从共享点数据库中获取它,我会在哪个数据库和哪个表中找到这些信息....

任何帮助将不胜感激

谢谢, 斯里克里希纳。

【问题讨论】:

  • 首先,我不建议直接修改 schema.xml 以获得开箱即用的列表。以这种方式获取副本并进行自定义通常是一种更好的做法。你最终会得到几乎相同的结果。其次,我看不到您的代码!第三,您不应该(或几乎不)必须查看 SharePoint 数据库中的表。
  • schemas.microsoft.com/sharepoint/v3" StaticName="ItemChildCount" 组="_Hidden" ReadOnly="TRUE" Filterable="FALSE" Sortable="FALSE" Hidden="FALSE" Type="Lookup" List="Docs" FieldRef="ID" ShowField="ItemChildCount" JoinColName="DoclibRowId" JoinRowOrdinal ="0" JoinType="INNER" /> 谢谢 Lucas 这是代码

标签: sharepoint document customization


【解决方案1】:
【解决方案2】:

有一个确定和安全的方法:

1 - 使用 SharePoint UI 创建一个列表

2 - 在 SharePoint UI 中的列表中添加一列

创建一个获取列表架构的应用页面,您就完成了:

SPList mylist=SPContext.Current.Web.Lists["myNewList"]; 

string schema = mylist.SchemaXml; 
schema = schema.Replace("<", "&lt;");
schema = schema.Replace(">", "&gt;"); 

string myAddedColumnSchema = mylist.Fields["MyAddedColumn"].SchemaXml; 
myAddedColumnSchema = myAddedColumnSchema .Replace("<", "&lt;");
myAddedColumnSchema = myAddedColumnSchema .Replace(">", "&gt;"); 

Response.Write(schema);

Response.Write("<br>");
Response.Write("<br>"); Response.Write(myAddedColumnSchema );

Response.Write("<br>");
Response.Write("<br>");

这为您提供了带有字段的列表架构,以及列表架构中的字段行(当然,在 Visual Studio 中复制结果并使用“格式化文档”,因为在网页上它只是不可读的。 您不能通过将其复制并粘贴到 SharePoint 2010 列表架构中来使用此列表架构,但您可以找到放置与您的自定义字段相对应的 XAML 的位置。

之后,您必须为您的自定义字段创建自定义内容类型。 使用 SharePoint 2007,您可以将与自定义字段对应的本地内容类型放入列表架构中,但它已经结束了。 (我想......如果有人能做到,我会很高兴错了;-))

然后使用新架构安装列表功能,并在站点内激活它。 然后安装内容类型功能并激活它。 然后基于新架构创建一个列表,允许该列表的内容类型管理并添加新的内容类型。 所有基于新内容类型的项目都将被允许使用新字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-26
    相关资源
    最近更新 更多