Что лучший способ состоит в том, чтобы получить отличный / уникальные значения с помощью SPQuery?

Просто удалите запись UILaunchImages из файла info.plist. Я знаю, что это не правильное решение, а просто взломать, но мне нужно было срочно загрузить мою сборку, и только это, похоже, сработало.

15
задан Alex Angas 18 February 2009 в 10:39
поделиться

3 ответа

Другой способ сделать это должно использовать DataView. ToTable-метод - его первый параметр является тем, который входит в отличный список.

            SPList movies = SPContext.Current.Web.Lists["Movies"];
            SPQuery query = new SPQuery();
            query.Query = "<OrderBy><FieldRef Name='Year' /></OrderBy>";

            DataTable tempTbl = movies.GetItems(query).GetDataTable();
            DataView v = new DataView(tempTbl);
            String[] columns = {"Year"};
            DataTable tbl = v.ToTable(true, columns);

можно затем продолжить двигаться с помощью DataTable tbl.

13
ответ дан 1 December 2019 в 03:24
поделиться

Там не ОТЛИЧНО в CAML для заполнения выпадающей попытки с помощью чего-то как:

foreach (SPListItem listItem in listItems)
    {
        if ( null == ddlYear.Items.FindByText(listItem["Year"].ToString()) )
       {
                   ListItem ThisItem = new ListItem();
                   ThisItem.Text = listItem["Year"].ToString();
                   ThisItem.Value = listItem["Year"].ToString();
                   ddlYear.Items.Add(ThisItem);
        }
   }

Предполагает, что Ваше выпадающее называют ddlYear.

2
ответ дан 1 December 2019 в 03:24
поделиться

Можно ли переключиться от SPQuery до SPSiteDataQuery? Необходимо смочь без любых проблем.

После этого, можно использовать стандартное поведение ado.net:

SPSiteDataQuery query = new SPSiteDataQuery();
/// ... populate your query here. Make sure you add Year to the ViewFields.

DataTable table = SPContext.Current.Web.GetSiteData(query);

//create a new dataview for our table
DataView view = new DataView(table);

//and finally create a new datatable with unique values on the columns specified

DataTable tableUnique = view.ToTable(true, "Year");
1
ответ дан 1 December 2019 в 03:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: