SORU
29 Temmuz 2009, ÇARŞAMBA


Büyük Denetleyicileri, ya da birçok denetleyicileri için daha iyi, MVC?

ASP.NET MVC oldukça büyük İK bir uygulama inşa ediyoruz, ve şimdiye kadar bizim denetleyicileri oldukça büyük bir hale geliyor. Örneğin, Çalışan bir kumanda var, ve tüm çalışan görüşleri (Kişisel bilgi, çalışan kesintiler, bağımlı, vb.) dahildir. Bu görünümlerin her biri, birden fazla eylem veya subviews (örneğin CRUD) olabilir. Her eylem nispeten küçük, ama kontrolörleri fonksiyonları onlarca olabilir.

Bölme denetleyicileri için en iyi yöntemler var mı? Manzarası onlarca ile Çalışan bir denetleyici yerine, her bir alt tür için bir denetleyici (EmployeePersonalİnfoController, EmployeeDeductionController, EmployeeDependentController yani) çok daha iyi olurdu, değil mi?

Ve nihayet, o bile fark eder mi?

Açıklama Güncellendi

Benim asıl endişem CRUD eylemleri ile oldu. Örneğin, Oluşturmak ve Silmek düşünün ...

EmployeeController geçerli Eylemler:

  CreateEmployee()
  DeleteEmployee()
  CreateEmployeeDeduction()
  DeleteEmployeeDeduction()
  CreateDependent()
  DeleteDependent()
  etc.

Eğer denetleyicileri bölünmüş olsaydı:

  EmployeeController
    Create()
    Delete()
  EmployeeDeductionController
    Create()
    Delete()
  EmployeeDependentController
    Create()
    Delete()
  EmployeeBenefitController
    Create()
    Delete()
  etc.

1. senaryoda, ~100 ekranlarımıza 8-10 büyük denetleyicileri bölünüyor. İkinci olarak, muhtemelen ~50 denetleyicileri olurdu.

CEVAP
29 Temmuz 2009, ÇARŞAMBA


Partial classes birden fazla dosya arasında sınıf yaymak için izin verir. Bu şekilde ayrı dosyalar halinde denetleyicisi ilgili alanlarda grup, ve henüz hala aynı kumanda parçası olacaklar. örneğin

EmployeeDeductionController.cs

public partial class EmployeeController
{
    public ActionResult Deduct()
    {
    }
    // etc
}

EmployeeBenefitController.cs

public partial class EmployeeController
{
    public ActionResult GiveBenefit()
    {
    }
    // etc
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • backyardjay

    backyardjay

    8 ŞUBAT 2009
  • boogie2988

    boogie2988

    6 NİSAN 2006
  • Virtual Riot

    Virtual Riot

    19 Mayıs 2011