在sharepoint裡面以編程方式建立欄位

來源:互聯網
上載者:User
/// <summary>    /// 添加欄位    /// </summary>    /// <param name="fields">添加到的欄位集合</param>    /// <param name="fieldDisplayName">欄位名稱</param>    /// <param name="fieldType">欄位類型</param>    /// <param name="defaultVal">預設值</param>    /// <param name="hidden">是否隱藏</param>    /// <param name="allowdeletion">是否允許刪除</param>    /// <returns></returns>    public void CreateField(SPFieldCollection fields, string fieldDisplayName, SPFieldType fieldType, string defaultVal, bool hidden, bool         allowdeletion)    {        if (fieldDisplayName == null) throw new ArgumentNullException("fieldDisplayName");        //判斷是否已經存在該欄位        bool isExists = fields.ContainsField(fieldDisplayName);        //如果欄位存在則不建立        if (isExists) return;        //false表示值可以為空白        fields.Add(fieldDisplayName, fieldType, false);        SPField field = new SPField(fields, fieldDisplayName)                            {                                AllowDeletion = allowdeletion,                                DefaultValue = defaultVal                            };        //記得調用Update();方法        field.Update();    }    protected void 建立欄位_Click(object sender, EventArgs e)    {        using (SPSite site = new SPSite (siteUrl))        {            using (SPWeb web = site.RootWeb)            {                SPList list = web.Lists["KB"];                web.AllowUnsafeUpdates = true; //記得設定這個屬性哦!                CreateField(list.Fields, "MyTestAdd", SPFieldType.Text, "Test", false, false);            }        }    }

當然,上面的代碼只是簡單的實現了添加欄位,但是如果欄位類型為SPFieldType.User的時候,defaultVal必須寫AD裡面的使用者名稱,不然欄位可以建立成功,你在sharepoint裡面使用的時候會報錯!

Technorati 標籤: sharepoint,Field

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.