Approccio corretto per passare i dati al livello di servizio

1

Sono curioso di sapere quale sia il modo migliore (migliore) per passare i dati a un livello di servizio in ASP.net Core. Supponiamo che io abbia un'entità Person che ha una relazione con un'entità Image (immagine del profilo) e un'altra relazione con un'entità Address .

La firma del metodo di servizio dovrebbe essere simile a questa:

public Person CreateCustomer(Person person, Address address, Image profilePicture)

O avrebbe più senso inserire tutti i dati necessari in un'interfaccia:

public Person CreateCustomer(ICustomerDetails details)

Utilizzando l'ultimo approccio, sarei in grado di rendere il mio ViewModel inerente a ICustomerDetails e potrei passare ViewModel dal controller direttamente al livello di servizio.

Quale approccio sarebbe più consigliabile in questa situazione.

    
posta jerojitov 24.12.2018 - 15:54
fonte

1 risposta

1

Il modo corretto per farlo è:

  1. Assegna un nome ai metodi per ciò che fanno

    public void Repository.SavePerson(Person person)

  2. Quando salvi un oggetto Person, devi solo inviare l'oggetto Person

  3. Verifica che il tuo oggetto abbia tutte le proprietà ad esso associate

es

public class Person 
{
    public string Id;
    public string Name;
    public Image ProfileImage;
    public Address ContactAddress;
}
    
risposta data 24.12.2018 - 16:30
fonte

Leggi altre domande sui tag