SubSonic 3.0.0.3 |SimpleRepository |Формула свойство / поле - PullRequest
0 голосов
/ 03 августа 2009

Мне нужно добавить свойство / поле формулы в SubSonic | SimpleRepository Может кто-нибудь сказать мне, как? или это невозможно?

ш, Нет тела

Ответы [ 3 ]

2 голосов
/ 03 августа 2009

Просто добавьте [SubSonicIgnore] выше LineCost

так

        [SubSonicIgnore]
        public decimal LineCost
        {
            get { return Qty * Convert.ToDecimal(LineCost); }
        }

это происходит, когда LineCost сопоставляется с базой данных.

1 голос
/ 03 августа 2009

Почему бы просто не выполнить расчет в самом определении объекта?

Итак

    public class OrderLine
    {
        public int OrderId { get; set; }
        public int Qty { get; set; }
        public decimal ProductPrice { get; set; }
        public decimal LineCost
        {
            get { return Qty * Convert.ToDecimal(LineCost); }
        }
    }
0 голосов
/ 04 августа 2009

Я вижу способ только с использованием анонимных типов, и тогда вам придется преобразовать тип в строку заказа (это не очень приятно)

                var x =from o in repo.All<OrderLine>()    
                    select new   
                    {
                        OrderId = o.OrderId,
                        ProductPrice = o.ProductPrice,
                        Qty = o.Qty,
                        LineCost = o.ProductPrice * o.Qty
                    };


            List<OrderLine> orders = null;
            foreach (var t in x)
            {
                orders.Add(new OrderLine
                {
                    LineCost = t.LineCost,
                    OrderId = t.OrderId,
                    ProductPrice = t.ProductPrice,
                    Qty = t.Qty
                });

            }
...