Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SharePoint:如何引用本地化列表?_Sharepoint - Fatal编程技术网

SharePoint:如何引用本地化列表?

SharePoint:如何引用本地化列表?,sharepoint,Sharepoint,我有一个通过功能安装的SharePoint列表 我需要启用在功能接收器中执行的内容类型: SPList list = site.Lists["NameOfList"]; list.ContentTypesEnabled = true; list.Update(); 问题是:site.Lists[“NameOfList”]方法似乎真正关注的是标题而不是ID 如何使用ID而不是因本地化而可能更改的标题来获取列表 <ListInstance TemplateType="10051"

我有一个通过功能安装的SharePoint列表

我需要启用在功能接收器中执行的内容类型:

SPList list = site.Lists["NameOfList"];
list.ContentTypesEnabled = true;
list.Update();
问题是:site.Lists[“NameOfList”]方法似乎真正关注的是标题而不是ID

如何使用ID而不是因本地化而可能更改的标题来获取列表

 <ListInstance
    TemplateType="10051" 
    Id="ThisISTheIDField"  //Want to retrieve list instance based on this field.
    Title="$Resources:MyFile,MyResourceName;"
    Url="Lists/URLOFList"
    OnQuickLaunch="TRUE">
  </ListInstance>

提前谢谢。10年来,这位微软的SharePoint开发者写了这篇内部文章,我敢说-c.r.a.p?

没有网站列表(可能是一个SPWeb?我知道命名很尴尬)

.Lists.GetList(Guid唯一ID,bool-bFetchMetadata)
.Lists.GetList(Guid唯一ID、bool bFetchMetadata、bool bFetchSecurityData)
.GetList(字符串strUrl)

第三个选项可以组合url并使用内部名称来获取它(在url列表中通过内部名称访问)

没有站点列表(可能是SPWeb?我知道,命名很难)

.Lists.GetList(Guid唯一ID,bool-bFetchMetadata)
.Lists.GetList(Guid唯一ID、bool bFetchMetadata、bool bFetchSecurityData)
.GetList(字符串strUrl)


第三个选项可以组合url并使用内部名称来获取它(在url列表中通过内部名称访问)

因此您的列表是一个自定义列表,对吗

您可以添加:

EnableContentTypes=TRUE 
到您的列表定义,您将不需要该功能


请参阅:

所以您的列表是自定义列表,对吗

您可以添加:

EnableContentTypes=TRUE 
到您的列表定义,您将不需要该功能


请参阅:

如果操作在生命周期中只需完成一次,我建议通过.Lists集合循环并检查baseTemplate是否匹配:

For Each oList In web.Lists
    If (list1.BaseTemplate = 10051) Then
         oList.ContentTypesEnabled=True
    End If
Next

如果操作在生命周期中只需完成一次,我建议通过.Lists集合循环并检查baseTemplate是否匹配:

For Each oList In web.Lists
    If (list1.BaseTemplate = 10051) Then
         oList.ContentTypesEnabled=True
    End If
Next

从理论上讲,你的建议听起来是可编辑的,但我们谈论的是SharePoint,所以我必须对它进行真正的测试,以确保它尊重该属性。哈哈。。放开,放开。。接受SharePoint理论上你的建议听起来很有用,但我们谈论的是SharePoint,所以我必须真正测试它,以确保它尊重该属性。哈哈。。放开,放开。。拥抱SharePoint