リストテンプレートからすべてのフィールドを取得する必要がありますか?これどうやってするの?
var web = site.OpenWeb();
var template = web.ListTemplates["SomeTemplate"];
template ... ???? -There is no method to get fields.
リストテンプレートからすべてのフィールドを取得する必要がありますか?これどうやってするの?
var web = site.OpenWeb();
var template = web.ListTemplates["SomeTemplate"];
template ... ???? -There is no method to get fields.
リスト テンプレートからすべてのフィールドを取得する組み込みメソッドはありません。フィールドを取得できる唯一の方法は、リストのスキーマ XML<Field>
を解析し、すべてのタグと<FieldRef>
タグを取得することです。
リスト インスタンスを作成する方が簡単です。後で次の例を使用してクエリを実行できます。
SPList.Fields
リストからすべてのフィールドを取得するには、次のようにプロパティを使用できます。
foreach (SPField spField in myList.Fields)
{
//your code here
}
また、リスト項目からすべてのフィールドを「逆の」SPListItem.Fields
プロパティから取得することもできます。この SO スレッドにも興味があるかもしれません: Check if a List Column Exists using SharePoint Client Object Model?