0

列 (管理者、ビューアー、マネージャー) としてロールを、項目 (Word ドキュメント、PPtx ドキュメント、Excel ドキュメント) としてドキュメント タイプを含む SharePoint リストがあります。対応する値に、各ロールがドキュメント タイプごとに持つ権限を入力しました。

2 つのドロップダウンを持つ Web パーツを作成しました。Dropdown1 には Roles があり、Dropdown2 には Doc Types があります。

各ドロップダウンで選択した値を使用して、リストから対応する値を照会するにはどうすればよいですか?

CAML を使用する必要がありますか?それとも SharePoint オブジェクト モデルを使用できますか?

using (SPSite siteCol = new SPSite("http://mySharepoint/"))
{
    using (SPWeb web = siteCol.RootWeb)
    {
        SPList list = web.GetList("/Lists/PermissionMatrix");

        SPListItem item = list.GetItemByIdSelectedFields([*Requires ID*], "Role");

        String role1= (String)item["Roles"];
    }
}

アイテム ID を使用する必要があり、CAML を使用してアイテムを照会することしかできなかったため、機能しません

助けてください。ありがとう

4

1 に答える 1

0

SharePoint 2010 には、いくつかのテクノロジと概念が用意されています。まず、SPQuery を CAML クエリと組み合わせて使用​​し、特定の条件に一致するリスト項目を要求します。例については、MSDN ( http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spquery.aspx ) を参照してください。

この短いサンプルでは、​​ListItem ID が 20 より大きいすべての完了アイテムを探しています。

var sampleQuery = new SPQuery();
sampleQuery.Query = @"<Where>
     <And>
       <FieldRef Name='Status' />
       <Value Type='Text'>Completed</Value>
     </And>
     <Gt>
       <FieldRef Name='Id' />
       <Value Type='Number'>20</Value>
     </Gt>
   </Where>";
var foundItems = list.GetItems(sampleQuery);

MSDN の記事にも記載されているように、LINQ 2 SharePoint を使用して、SharePoint サイト内で指定された構造に基づいて厳密に型指定されたモデル クラスを生成できます。

于 2012-10-16T21:56:46.917 に答える