【问题标题】:Set and return object with LINQ使用 LINQ 设置和返回对象
【发布时间】:2011-01-18 20:37:33
【问题描述】:

我在 Visual Studio 2010 中有一个使用实体框架的 MVC 2 项目,并且我有一个“ProductModel”类,它正在执行 LINQ 查询以从数据库中返回产品。

我想返回 Products 对象而不是默认的“实体”查询对象,所以我发现我必须这样做:

 var product = from x in productosBD.Products
                       where x.Id == id
                       select new ProductoModels { Id = x.Id, NombreCorto = x.NombreCorto, NombreLargo = x.NombreLargo, Pvp = x.Pvp .... };

问题是我必须对数据库表的所有属性进行所有分配(可能很容易 30)所以我的问题是:有没有办法自动映射数据库实体和我的对象类?比如:

            var product = from xin productosBD.Products 
                       where x.Id == id
                       select x;

但要重新修复 Products 对象?

提前致谢

【问题讨论】:

    标签: visual-studio linq entity-framework


    【解决方案1】:

    自动映射器:http://automapper.codeplex.com/

    http://www.lostechies.com/blogs/jimmy_bogard/archive/2009/01/22/automapper-the-object-object-mapper.aspx

    public static void Configure() {
        Mapper.CreateMap<Order, OrderViewModel>();
        Mapper.CreateMap<OrderLineItem, OrderLineItemViewModel>(); 
    }
    
    
    var viewModel = Mapper.Map<Order, OrderViewModel>(order);
    

    【讨论】:

    • 谢谢,对像我这样的新手很有用:)
    • @Msam85,没问题。欢迎来到 SO。随意将此问题标记为已回答,并根据需要投赞成票/反对票。
    猜你喜欢
    • 2023-03-24
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多