Sharepoint學習筆記—Upgrading&Version版本升級:Content Type Feature(二.Content Type Feature修改和版本升級)

來源:互聯網
上載者:User

Sharepoint2010給我們帶來的好處之一就是極大提高了Feature的版本管理能力,我們能夠通過Visual Studio2010的協助來對開發的Feature進資料列版本設定和升級。此處我們以Content Type為例來示範Content Type Feature的版本控制與升級功能。上一篇我們通過VS2010來建立一個Content Type Feature並把它部署到我們的網站上,當時我們指定它的版本號碼為1.0.0.0。這一篇,由於使用者的需求發生了變化,我們需要對此Feature進行修改,修改後的版本號碼將為2.0.0.0,並會對以前的1.0.0.0的版本進行升級。
下面直接進入我們操作步驟:
1.使用Visual Studio2010開啟我們前面建立的Sharepoint項目TestUpgradableCT。
在此項目中新增一個新的Element元素(NewFieldVersion2),此元素是我們對Feature的新增變化。

 

2.修改此Element元素的Element.xml內容如下:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Field ID="{4A977AA8-802B-4E4E-8003-CC48BE5EF66E}"
     Name="Note2"
     StaticName="Note2"
     DisplayName="Note on version 2"
     Type="Note"
     Group="A feature upgrade attempt"/>
</Elements>

 

3、把剛才新建立的Element加入到我們的ContentType Feature中。方法是
 

  3.1.在Vs2010中展開Features節點,編輯它的Feature.Template.xml文檔
  

 

修改其內容如下:

<?xml version="1.0" encoding="utf-8" ?>
<Feature xmlns="http://schemas.microsoft.com/sharepoint/">
  <UpgradeActions>
    <VersionRange BeginVersion="1.0.0.0" EndVersion="4.0.0.0">
      <ApplyElementManifests>
        <ElementManifest Location="NewFieldVersion2/Elements.xml"/>
      </ApplyElementManifests>

      <AddContentTypeField
      ContentTypeId="0x0101000dca569159f044bba9feb7f6d1abad4c"
      FieldId="{4A977AA8-802B-4E4E-8003-CC48BE5EF66E}"
      PushDown="TRUE"/>
    </VersionRange>
  </UpgradeActions>
</Feature>

說明:
<UpgradeActions>節是要告訴Sharepoint,此節中包含的Feature內容就是我們要用於升級的內容。
<VersionRange BeginVersion="1.0.0.0" EndVersion="4.0.0.0">是指當Sharepoint檢測到Feature的版本號碼提高,並且新的版本號碼是介於1.0.0.0和4.0.0.0之間的(也就是此處我們指定的範圍值),則就會進行升級操作。
 <ApplyElementManifests>,指定要在功能更新期間應用的元素清單,此處,我們指定了NewFieldVersion2目錄下的Elements.xml元素,也就是我們剛才新添加的元素。
<AddContentTypeField>指定功能更新期間要添加的內容類型欄位,其中的ContentTypeId我們使用了我們此處開發的Content Type Feature的id號, FieldID則是我們剛才添加的新的Elment元素的ID號,PushDown為可選屬性,類型為 Boolean,我們此處指定應將內容類型欄位應用於繼承的內容類型和列表。

3.2修改Feature的版本號碼為2.0.0.0,然後重新Build和部署。
  

回到我們的測試網站,SiteActions-->SiteSettings,選擇Galleries下的SiteContent Type項。

選擇我們開發的ZLUpgradableCT,進入其設定頁面。

 

設定頁面中選擇Add from existing site columns

 

 

添加我們升級版本中新添加的Element元素,在A feature upgrade attempt組下,可以看到Note on version2,選擇此項添加到右邊列表框中。

 

然後再做與上一篇類似的測試,可以看到,此Feature的升級生效。

 

 

 

 

 

 

 

 

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.