Ho iniziato a chiedermi quale sia la migliore pratica nella gestione degli oggetti nello sviluppo web.
Semplifica il processo quando c'è una richiesta di pagina che assomiglia spesso a:
- Richiesta di pagina.
- Recupera i dati oggetto dal database.
- Crea oggetto.
- Restituisci oggetto alla pagina.
E su POST o salva:
- Ottieni dati dalla pagina.
- (Crea oggetto) potrebbe essere fatto in 1.
- Salva i dati dell'oggetto nel database.
Ho scritto un codice di esempio qui sotto:
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Category { get; set; }
public bool SaveNew()
{
SaveToDatabase(this.Id, this.Name, this.Category);
}
public void SetElementsById()
{
var datarows = GetProductDataByIdFromDB(this.Id);
Name = datarows[1].ToString();
Category = datarows[2].ToString();
}
}
public class ProductHandler
{
public bool SaveNew(Product product)
{
SaveToDatabase(product.Id, product.Name, product.Category);
}
public void GetProductById(int id)
{
Product product = new Product();
product.Id = id;
var datarows = GetProductDataByIdFromDB(id);
product.Name = datarows[1].ToString();
product.Category = datarows[2].ToString();
}
}
Qual è la migliore pratica, per gestire i dati dell'oggetto all'interno dell'oggetto o in un tipo di classe del gestore?