zoukankan      html  css  js  c++  java
  • sharepoint 2010 创建内容类型1

    在 SharePoint 2010 中创建自定义内容类型

    SharePoint 2010
     
    此主题尚未评级 - 评价此主题
     

    SharePoint 快速入门横幅

    SharePoint 2010 中的 Web 开发入门:了解如何在 SharePoint 2010 中创建自定义内容类型。

    适用范围: Microsoft SharePoint Foundation 2010 | Microsoft SharePoint Server 2010 | Microsoft Visual Studio 2010
    发布时间:2010 年 4 月
    供稿人: Frank Rice(该链接可能指向英文页面),Microsoft Corporation

    在该练习中,您将创建自定义内容类型。然后将两个字段添加到内容类型:新文本字段和网站中已存在的字段。若要完成此任务,您必须执行以下操作:

    创建 SharePoint 2010 项目

    在该任务中,您将在 Microsoft Visual Studio 2010 中创建空白 SharePoint 2010 项目。

    创建 SharePoint 项目

    1. 若要启动 Visual Studio 2010,请依次单击“开始”菜单、“所有程序”、“Microsoft Visual Studio 2010”和“Microsoft Visual Studio 2010”。

    2. 在“文件”菜单上,指向“新建”,然后单击“项目”。

    3. 在“新建项目”对话框窗口中的“已安装的模板”部分,依次单击“Visual C#”、“SharePoint”和“2010”。

    4. 从项目项中选择“空白 SharePoint 项目”。

    5. 在“名称”框中,键入 CreateContentType,然后单击“确定”。

    6. 在 SharePoint 自定义向导中,键入要用于本练习的本地网站(例如 http://localhost/SampleWebSite)。

    7. 对于信任级别,请选择“部署为场解决方案”,然后单击“完成”。

    创建内容类型

    在该任务中,您将以功能形式创建内容类型,并添加事件接收器。

    创建内容类型

    1. 在解决方案资源管理器中,右键单击“功能”文件夹,然后单击“添加功能”。

    2. 右键单击“Feature1”,然后单击“添加事件接收器”。Visual Studio 会将功能事件接收器添加到 Feature1。

    3. 右键单击“Feature1.EventReceiver.cs”,然后单击“查看代码”。

    4. Feature1EventReceiver 类中,取消注释 FeatureActivated 方法。

    5. FeatureActivated 方法中插入以下代码。

      using (SPWeb spWeb = properties.Feature.Parent as SPWeb)
      {
          SPContentType newAnnouncement = spWeb
              .ContentTypes
              .Cast<SPContentType>()
              .FirstOrDefault(c => c.Name == "New Announcements");
          if (newAnnouncement != null)
          {
              newAnnouncement.Delete();
          }
      
          SPField newField = spWeb.Fields
              .Cast<SPField>()
              .FirstOrDefault(f => f.StaticName == "Team Project");
          if (newField != null)
          {
              newField.Delete();
          }
      
          SPContentType myContentType = 
              new SPContentType(spWeb.ContentTypes["Announcement"], 
                  spWeb.ContentTypes, "New Announcements");
          myContentType.Group = "Custom Content Types";
      
          spWeb.Fields.Add("Team Project", SPFieldType.Text, true);
          SPFieldLink projFeldLink = new SPFieldLink(spWeb.Fields["Team Project"]);
          myContentType.FieldLinks.Add(projFeldLink);
      
          SPFieldLink companyFieldLink = new SPFieldLink(spWeb.Fields["Company"]);
          myContentType.FieldLinks.Add(companyFieldLink);
      
          spWeb.ContentTypes.Add(myContentType);
          myContentType.Update();
      }
      

      FeatureActivated 方法在启动 Feature1 时运行。此代码可用于执行以下操作:

      • 删除内容类型 New Announcements 和字段 Team Project(如果存在)。

      • 根据 New Announcements 内容类型创建父内容类型 Announcement

      • 创建一个文本字段(标题为 团队项目),然后将其添加到该内容类型。

      • 将标题为 Company 的现有字段添加到该内容类型。

    6. 取消注释 FeatureDeactivating 方法。

    7. FeatureDeactivating 方法中插入以下代码。

      using (SPWeb spWeb = properties.Feature.Parent as SPWeb)
      {
          SPContentType myContentType = spWeb.ContentTypes["New Announcements"];
          spWeb.ContentTypes.Delete(myContentType.Id);
          spWeb.Fields["Team Project"].Delete();
      }
      

      FeatureDeactivating 方法在停用 Feature1 时运行。此代码可用于执行以下操作:

      • 删除内容类型 New Announcements

      • 删除文本字段 Team Project

    8. 在解决方案资源管理器中,右键单击“CreateContentType”,然后单击“部署”。

    验证项目运行是否正常

    在该任务中,您将验证内容类型和两个字段是否可用。

    测试项目

    1. 启动 Internet Explorer,并浏览到之前指定的网站。

    2. 在屏幕的左上部,单击“网站操作”,然后单击“网站设置”。

    3. 在“库”下,单击“网站列”。

    4. 在“显示用户组”选项中,单击“自定义列”。

      您将看到新字段 Team Project



      图 1.“团队项目”字段

      “团队项目”字段
    5. 单击“网站操作”,然后单击“网站设置”。

    6. 在“库”下,单击“网站内容类型”。

    7. 从“显示用户组”选项中选择“自定义内容类型”。

      您将看到新内容类型 New Announcements



  • 相关阅读:
    C语言|博客作业08
    C语言|博客作业04
    C语言|博客作业02
    C语言|博客作业06
    C语言|博客作业03
    第一周作业
    C语言|博客作业05
    C语言|博客作业07
    C语言|博客作业09
    为什么get比post更快
  • 原文地址:https://www.cnblogs.com/TNSSTAR/p/2923928.html
Copyright © 2011-2022 走看看