0

私はSharepoint2010を使用しており、C#/VS2010でアプリケーションページを作成しました。ListViewByQueryを使用してリストを表示しています。GroupByタグを追加してリストをグループ化するまでは、すべて問題ありません。これが追加されると、何らかの理由で、query.ViewFieldsで選択した列が無視され、代わりに、折りたたまれたときと展開されたときの両方で、他の3つの列が表示されます。コードはここにあります:

            //this section demonstrates how to display a list in an SP Application Page project:
        using (SPWeb web = site.OpenWeb())
        {
            myListQuery.List = web.Lists["Links"];
            SPQuery query = new SPQuery(myListQuery.List.DefaultView);
            //note: there seems to be bug somewhere... when the list is grouped by (folders), you
            //      don't see the fields you request - just three basic fields.  It seems to ignore the ViewFields
            //      that you specified, unless you don't group.  Weird.
            query.ViewFields = "<FieldRef Name=\"ID\" /><FieldRef Name=\"URLwMenu\" /><FieldRef Name=\"List\" /><FieldRef Name=\"Category\" /><FieldRef Name=\"Author\" />";
            query.Query = "<Where><Contains><FieldRef Name=\"List\"/><Value Type=\"Text\">Projects</Value></Contains></Where>";
            //if this next line is commented out, all the correct columns are shown
            query.Query += "<GroupBy Collapse=\"FALSE\" GroupLimit=\"100\"><FieldRef Name=\"Category\"></GroupBy>";
            myListQuery.DisableFilter = false;
            myListQuery.DisableSort = false;
            myListQuery.Query = query;
        }

この例で示されている列は、Type、Edit、URL、およびNotesです。誰かが手がかりを持っているなら、それは大いにありがたいです!

4

1 に答える 1

1

GroupBy 句の FieldRef の終了タグに / が欠落しているようです。

<FieldRef Name=\"Category\">
于 2013-01-04T20:58:07.517 に答える