返回链接中的对象并修剪字段

时间:2010-07-22 10:22:54

标签: c# linq-to-sql

说我有以下Linq 2 SQL命令;

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

假设它返回一个对象集合;

  • ID
  • 标题
  • 描述

如果描述中有超过200个chrs,是否有办法返回整个对象并将描述修剪为前200个chrs?

或者我应该收集它然后通过它们进行迭代?

感谢

1 个答案:

答案 0 :(得分:1)

您可以使用“选择”将其投影到新集合。所以你有 -

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 });