none
Concatenar enum con un texto en una consulta linq RRS feed

  • Pregunta

  • Buenas a todos del foro, estoy desarrollando una aplicación WinForm en c# con el enfoque EF Code First. El problema que tengo es cuando hago una consulta Linq en donde trato de concatenar un Enum con un string. El error es el siguiente:

    Unable to cast the type 'Entities.VoucherType' to type 'System.Object'. LINQ to Entities only supports casting EDM primitive or enumeration types

    A continuación les paso el Enum, Entidades y la consulta LinQ:

    public enum VoucherType
    {
        FAC = 1,
        BV,
        TKT,
        GR
    }
    public partial class Order
    {
        public int OrderId { get; set; }
        public VoucherType VoucherType { get; set; }
        public string VoucherSeries { get; set; }
        public string VoucherNumber { get; set; }
    }

    public partial class Income
    {
        public int IncomeId { get; set; }
        public int OrderId { get; set; }
        public decimal IncomeAmount { get; set; }
    }

    var q = from income in context.Incomes
            join order in context.Orders on income.OrderId equals order.OrderId
            select new
            {
                Voucher = order.VoucherType + "-" + order.VoucherSeries + "-" + order.VoucherNumber,
                Amount = income.IncomeAmount
            };

    Saludos.

    jueves, 19 de junio de 2014 14:06

Respuestas