5

私は、会社のWebサイトでタスクを実行するためのチェックリストを作成しています。私が現在取り組んでいる機能は、タスクを完了して完了のマークを付けたら、SharePoint Webパーツから、まだ完了する必要のあるもののリストを含む電子メールを送信することです。

アイテムをリストに自由に追加および減算できるようにしたいパワーはモジュール式である必要があります。したがって、リストのチェックもモジュール式であり、モジュール式で記述されている必要があります。

私が抱えている問題は、すべてのタスクが既存のコードのSPListに格納されていることです。リストを繰り返し処理して、その人がすでに次のタスクを実行しているかどうかを確認する方法が正確にはわかりません。次、前、頭または尾の操作は表示されません(リストから予想されるように)。インデックス作成では文字列を使用するため、関連付けデータ構造(マップ)またはDBの主キーのように動作します。

助けてください、そしてみんなに感謝します!

乾杯、

-ジェレミア・タントンコ

4

3 に答える 3

5

SharePointリストは、コンピューターサイエンスの方法でのリストではありませんが、エンドユーザーがリストとして期待するものです。

リストはデータベーステーブルに似ているものとしてもっと見る必要があります。条件に基づいてテーブル(リスト)内のレコード(アイテム)を検索する場合は、クエリを使用する必要があります。

したがって、SPListでSPListItemを見つける正しい方法は、SPQueryを使用して条件を適切なXML構文(CAML)で指定し、SPQueryをSPList.GetItemsに渡して、SPListItemのコレクションを取得することです。

これはあなたにグーグルにいくつかの用語を与えるはずです。クエリの構文についてさらにヘルプが必要な場合は、U2U Caml Query Builderを使用するか、より具体的な情報を提供してください。

于 2009-09-29T18:30:55.413 に答える
0

リストを繰り返し処理するかどうかは議論の問題かもしれませんが、(私の場合のように) やむを得ない場合は、次のコードを使用できます。

        SPSite siteCollection = new SPSite("http://localhost/");
        SPWeb site = siteCollection.RootWeb;
        SPList myList = site.Lists["My List"];
        SPListItemCollection itemCollection = myList.Items;

        foreach (SPListItem item in itemCollection)
        {
            //Do something with each item
        }
于 2011-07-12T10:42:25.147 に答える
-1

これはあなたの問題を解決するかもしれません

SPList interviewList = myWeb.Lists["listtoiterate"];
foreach (SPListItem interview  in interviewList)
{
// Do Something
} 
于 2009-10-26T16:32:44.370 に答える