записывать операторы условия в разделяемой точке SPListItemCollection перед привязкой метода к репитеру asp.net - PullRequest
0 голосов
/ 01 декабря 2011

Моя ситуация такова:

У меня есть функция, которая возвращает значение как SPListItemCollection, и я связываю эту функцию с повторителем. Моя проблема в том, как я могу сделать некоторое условное форматирование перед возвращаемым значением?

SPListItemCollection GetListItems()
{
SPWeb curWeb = SPContext.Current.Site.RootWeb;
string siteUrl = SPContext.Current.Web.Url;
SPListItemCollection curItems = GetDep(ListName, department);
// write condition here so that it checks if the item count is higher or 
//lower than a specified number.

return curItems;
}

спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 02 декабря 2011

Попробуйте что-то вроде

    SPListItemCollection GetListItems()
    {
    SPWeb curWeb = SPContext.Current.Site.RootWeb;
    string siteUrl = SPContext.Current.Web.Url;
    SPListItemCollection curItems = GetDep(ListName, department);

        var itemsForDepartment = curItems.GetDataTable().Rows.Where(r => r["Department"] == department); // you can try to do this is caml too 
        if(itemsForDepartment.Count > itemCount) {
         // insert the "show me more" link
        } 
    var itemsForDepartment = itemsForDepartment.Take(itemCount); 
    // bind itemsForDepartment to a Repeater
    return curItems;
    }

Я не скомпилировал этот код, поэтому вам придется исправить некоторые синтаксические ошибки;)

0 голосов
/ 01 декабря 2011

Я не уверен на 100%, что вы хотите сделать до возвращения.Если вы хотите только проверить, является ли resultItem.Count больше 100, например, вы можете сделать это:

    SPListItemCollection GetListItems()
    {
        SPWeb curWeb = SPContext.Current.Site.RootWeb;
        string siteUrl = SPContext.Current.Web.Url;
        SPListItemCollection curItems = GetDep(ListName, department);

        if (curItems.Count > 100)
        {
            // change the items or do whatever you want. after that, return:
            foreach(SPListItem item in curItems)
            {
                //format/change
            }
            return curItems;
        }
        // return, without any changes
        return curItems;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...