Mi imbatto regolarmente in situazioni in cui ho bisogno di aggiungere o modificare un elemento, e a volte uso metodi separati per aggiungere e modificare, e altre volte li combino in un unico metodo.
Un metodo è preferito rispetto all'altro? Se sì, perché?
public void AddItem()
{
ShowEditingPopup(new Item(), "Add Item");
}
public void EditItem(Item item)
{
ShowEditingPopup(item, "Edit Item");
}
o
public void EditItem(Item item)
{
ShowEditingPopup(
(item ?? new Item()),
string.format("{0} Item", (item == null ? "Add " : "Edit "))
);
}
dove ShowEditingPopup
è definito come
public void ShowEditingPopup(object popupDataContext, string popupTitle)
{
PopupDataContext = popupDataContext;
PopupTitle = popupTitle;
IsPopupVisible = true;
}
Modifica: giusto per chiarire, non sto salvando l'oggetto, lo sto aprendo per l'editing. Ho quasi sempre implementato un metodo di salvataggio generico per il salvataggio nel database
Modifica n. 2: esempi di codice modificati in modo da riflettere più accuratamente il tipo di situazione a cui mi riferisco