Вернуть объект в ссылку и обрезать поле - PullRequest
2 голосов
/ 22 июля 2010

Допустим, у меня есть следующая SQL-команда Linq 2;

ItemsRepository.All().Where(r => r.type == "myType");

Допустим, он возвращает коллекцию объектов;

  • ID
  • название
  • описание
  • тип
  • и т.д.

Есть ли способ вернуть весь объект и обрезать описание до 1-х 200 часов, если в описании более 200 часов?

Или я должен получить коллекцию и затем пройти через нее?

спасибо

1 Ответ

1 голос
/ 22 июля 2010

Вы можете использовать Select, чтобы спроецировать это на новую коллекцию. Так что вы бы -

var x = ItemsRepository.All().Where(r => r.type == "myType");

var y = x.Select(z => new { z.id, z.title, z.description.Substring(0,200), z.type });

Если вы не хотите проецировать на анонимный тип, просто укажите тип, на который вы хотите проецировать -

var y = x.Select(z => new MyNewType { ID = z.id, Title = z.title, Description = z.description.Substring(0,200), z.type });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...