caml を使用してリスト項目を照会し (これを初めて実行)、更新日に基づいて項目を並べ替えて、最新のドキュメントにアクセスできるようにしようとしています。ただし、ID に基づいて SPListItem を取得しようとすると失敗します。
コード:
SPQuery query = new SPQuery();
String camlquery = "<OrderBy><FieldRef Name='Modified' Ascending='False' /></OrderBy>";
query.ViewAttributes = "Scope = 'Recursive'";
query.ViewFields = "<FieldRef Name='Modified' /><FieldRef Name='Title' /><FieldRef Name='Name' />";
query.Query = camlquery;
query.IncludeMandatoryColumns = true;
SPListItemCollection col = list.GetItems(query);
//failing here... I think
SPListItem item = col.GetItemById(0);
SPListItemCollection 内のインデックスに基づいて SPListItem を取得する方法はありますか?
私が試してみました
SPListItem item = col[0];
また、運が悪い。
これが私が得ているエラーです:
値が期待される範囲内にありません。説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.ArgumentException: 値が期待される範囲内にありません。