Программно установка CAML-запроса на запрос на заказ пользовательский веб-сайт, который наследуется от ContentByVeryWebPart

StackOverflow https://stackoverflow.com/questions/5457223

Вопрос

Название в значительной степени суммирует, что я ищу. Я создал пользовательский веб-сайт в Visual Studio 2010, для решения SharePoint 2010, который вытекает из ContentbyQueryWebPart. Целью веб-панель является поиск пользователей Обзор своих собственных задач, взятых из нескольких списков задач. Нет проблем до сих пор.

Но я переопределил метод OnInit-метод, чтобы получить некоторые данные из URL-запроса (с помощью Page.Request), чтобы сделать какую-то пользовательскую фильтрацию, группировку и сортировку. Проблема в том, что пользовательский CQWP не приведет к созданию строки CAML.

Я уже попробовал некоторые подходы, но ни один из них не казалось, работал. Я даже отделил его до минимума. Может быть, место, где я устанавливаю queroverride, неправильно. (Oninit / onload / до или после базы.on **** (E);?) На данный момент он выглядит так:

protected override void OnInit(EventArgs e)
{
    string query = "<Query><Where><Eq><FieldRef Name=\"AssignedTo\" /><Value Type=\"User\"><UserID /></Value></Eq></Where></Query>";
    this.QueryOverride = query;
    base.OnInit(e);
}
.

Я надеюсь, что у кого-то есть идея. Любая помощь оценила. Если есть еще что-то неясное, пожалуйста, не стесняйтесь спрашивать.

Markus Schwalbe

Примечание: английский не мой первый язык, поэтому, пожалуйста, извините за каждую ошибку, которую я сделал в этом посте. :)

Это было полезно?

Решение

Я нашел решение для этого. Похоже, это не хотел, чтобы пользователь-тег как значение.

Работает как очарование, когда вы используете имя-атрибут текущего (или любого другого) SPUSER-объекта и измените тип значения на «текст»: (Кроме того, вы можете оставить тег запроса, а «можно заменить», что выглядит keyal Cleaner)

this.QueryOverride = "<Where><Eq><FieldRef Name='AssignedTo' /><Value Type='Text'>" + SPContext.Current.Web.CurrentUser.Name + "</Value></Eq>";
.

Я надеюсь, что это поможет кому-либо, у кого такая же проблема. Искренне,

Markus Schwalbe

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top