将System.Data.Linq.Table <t>转换为自定义类

时间:2016-10-06 18:45:12

标签: c# linq linq-to-sql

我使用Linq to SQL在我的sql表上发出请求。我得到了System.Data.Linq.Table<Table>

的实例

我还有一个类,其中包含一些与我的表的属性相对应的属性(这些属性与我的System.Data.Linq.Table<Table>实例的属性具有相同的名称)

如何将System.Data.Linq.Table<Table>转换为我的自定义类的实例?

没有使用Select(x => new CustomClass() { Id = x.Id, Name = x.Name ....})而没有{如果可能的话}使用Reflexion(它很慢)

1 个答案:

答案 0 :(得分:0)

您可以使用AutoMapper来映射对象 您可以在https://github.com/AutoMapper/AutoMapper/wiki/Getting-started

查看入门页面

基本上,您需要在TableCustomClass类之间设置映射

Mapper.Initialize(cfg => cfg.CreateMap<Table, CustomClass>());

然后,您可以将Table个实例映射到CustomClass

CustomClass myCustomClass= Mapper.Map<CustomClass>(table);