基于列表定义模板创建列表

Aln*_*dru 3 c# sharepoint templates list

我的解决方案中有一个列表定义,我希望以编程方式能够基于该列表定义创建列表,任何人都可以告诉我该怎么做?

<ListTemplate
    Name="Mylise"
    Type="10778"
    BaseType="0"
    OnQuickLaunch="TRUE"
    SecurityBits="11"
    Sequence="410"
    DisplayName="My new List"
    Description="My own list"
    Image="/_layouts/images/itgen.png"/>
Run Code Online (Sandbox Code Playgroud)

Raw*_*ing 12

呼叫

var customTemplate = yourSPWeb.ListTemplates["Mylise"];
Run Code Online (Sandbox Code Playgroud)

然后获取列表模板对象

yourSPWeb.Lists.Add("List title", "List description", customTemplate);
Run Code Online (Sandbox Code Playgroud)

创建列表.


Ron*_* SP 6

try
{
  SPList list = null;
  using (SPSite site = new SPSite("http://yoursite/"))
  {
     using (SPWeb web = site.RootWeb)
     {
      //List Will be Created Based on this ListDefinition
- OOB Custom List Definition
      //00BFEA71-DE22-43B2-A848-C05709900100

        foreach (SPList _list in web.Lists)
        {
          if (_list.Title.Equals("TestList"))
          {
              list = _list;
          }
        }

        if (list == null)
        {
         web.AllowUnsafeUpdates = true;
         Guid listID = web.Lists.Add("TestList", //List Title
                      "This is Test List",      //List Description
                      "Lists/TestList",         //List Url
                      "00BFEA71-DE22-43B2-A848-C05709900100", //Feature Id of List definition Provisioning Feature – CustomList Feature Id
                       10778,                     //List Template Type
                     "101");      //Document Template Type .. 101 is for None

           web.Update();
           web.AllowUnsafeUpdates = false;

         }
        }


     }
    }
    catch (Exception ex)
    {

    }
Run Code Online (Sandbox Code Playgroud)

希望这对你有帮助:)