SORU
24 EKİM 2008, Cuma


ASP.NET MVC - iş mantık denetleyicileri var Olmalıdır?

Derik Whitaker bir süredir merak ettiğim bir noktada o article birkaç gün önce bir yayınlanmıştıriş mantık denetleyicileri var olmalıdır?

Şimdiye kadar tüm ASP.NET bu MVC denetleyicisi depo erişimi ve iş mantığı koymak gördüm demolar. Hatta bazıları orada doğrulama güzeldi. Bu oldukça büyük, şişirilmiş denetleyicileri sonuçları. Bu gerçekten MVC çerçevesini kullanmak için yolu nedir? Bu sadece yinelenen kod ve mantık farklı denetleyicileri dağılmış bir sürü ile sonuna kadar gidecek gibi görünüyor.

CEVAP
24 EKİM 2008, Cuma


İş mantığı gerçekten model olmalıdır. Yağ modellerini, sıska denetleyicileri için amaçlayan olmalıdır.

Yerine örneğin,:

public interface IOrderService{
    int CalculateTotal(Order order);
}

Tercih ederim:

public class Order{
    int CalculateTotal(ITaxService service){...}        
}

Bu vergi harici bir servis tarafından hesaplamak ve model dış hizmetleriniz için arayüzleri hakkında bilmek gerektirdiğini varsayar.

Bu denetleyici bir şey gibi gösterdiler:

public class OrdersController{
    public OrdersController(ITaxService taxService, IOrdersRepository ordersRepository){...}

    public void Show(int id){
        ViewData["OrderTotal"] = ordersRepository.LoadOrder(id).CalculateTotal(taxService);
    }
}

Ya da onun gibi bir şey.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Deany Boii

    Deany Boii

    27 Kasım 2007
  • discokatze

    discokatze

    23 EYLÜL 2009