среда, 29 октября 2008 г.

Как динамически сменить запрос для ListView привязанного к LinqDataSource?

Для того чтобы динамически сменить запрос для ListView привязанному к LinqDataSource нужно обработать событие OnSelecting у LinqDataSource. 

Например вот так:


protected void dsMates_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
if (Request.Params["classMateId"] != null)
{
int mateId;
if (int.TryParse(Request.Params["classMateId"], out mateId))
{
using (DataClassesPrivateMsgDataContext db = new DataClassesPrivateMsgDataContext())
{
e.Result = db.Classmates.Where(mate => mate.Id == mateId).FirstOrDefault();
}
}
}
}

Посмотреть как это работает можно здесь: сайт а-класса

Комментариев нет: