Bu soruyu göndermeden önce biraz araştırma yaptım. Diğer sorular veya gönderilerin yanı sıra, bunlardan biri aşağıda verilmiştir. Nasıl belirleyeceğime dair net bir fikrim yoktu.
Veri Erişim Katmanındaki İş Nesneleri
Bir havuz var ve iş katmanları veri almak için havuzu çağırır. Örneğin, BLL ve DAL için aşağıdaki sınıflarım olduğunu varsayalım:
class BllCustomer
{
public int CustomerId {get; set;}
public String Name {get; set;}
public BllAddress Address {get; set;}
}
class BllAddress
{
public int AddressId {get; set;}
public String Street {get; set;}
public String City {get; set;}
public String ZipCode {get; set; }
}
class DalCustomer
{
public int CustomerId {get; set;}
public String Name {get; set;}
public int AddressID {get; set;}
}
class DalAddress
{
public int AddressId {get; set;}
public String Street {get; set;}
public String City {get; set;}
public String ZipCode {get; set; }
}
BLL bir Müşteri nesnesi almak istiyorsa, DAL'de GetCustomerById (customerId) öğesini çağırır.
Açık bir zihin bulamadığım endişelerim şunlardır:
Nasıl DAL GetCustomerById dönmesi gerektiğini belirlemek için göremiyorum? BllCustomer veya DalCustomer döndürmeli mi?
Müşteriyle ilişkili adresin alınması (ve / veya İşletme nesnesine dönüştürülmesi) nerede olmalıdır?
DAL Dal nesnelerini döndürürse, Adres'i almak ve doldurmak için mantık yalnızca BLL'de olabilir. DAL, BLL nesnelerini döndürürse, Adres'i almak ve doldurmak için mantık BLL veya DAL'de olabilir. Şu anda DAL, İş Nesnelerini döndürüyor ve doldurmak için mantık DAL'de.
Okuduğum kadarıyla, doğru ya da yanlış yoktur sanırım. Yukarıda verilen bağlantıdan, insanlar bir şekilde, diğerleri ise başka şekilde söylüyor. Ama benim durumum için hangisinin en iyi olacağını nasıl belirleyebilirim?
Herhangi bir yardım mutluluk duyacağız.