Devo tenere un ID e l'elemento [duplicato]

0

Diciamo che ho un cliente che contiene una classe di indirizzo come:

public class Customer
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public Address Address { get; set; }

    // Constructor and other code
}

Dovrei avere anche una proprietà per l'ID di riferimento per chiedere a un'altra classe di darmi il Address ?

    public int RefAddressId { get; private set; }

    public Initialize()
    {
        Address = someInterface.GetAdressById(RefAddressId );
    }

o dovrei chiedere a un'altra classe di darmi il Address basato sul mio CustomerId

    public Initialize()
    {
        Address = someInterface.GetAdressByCostumerId(Id);
    }

C'è una regola perché e quando preferirei l'una rispetto all'altra?

O forse c'è anche un altro modo più comune per farlo.

    
posta WiiMaxx 01.12.2015 - 11:08
fonte

1 risposta

0

Puoi seguire una pratica adeguata in base al requisito. In questo caso, un cliente è unico e avrà un indirizzo univoco associato ad esso. Se l'indirizzo ha la possibilità di essere utilizzato da molti altri clienti, utilizzare un'interfaccia separata per l'indirizzo mi sembra una buona idea. In tal caso, l'oggetto può recuperare l'indirizzo (possibilmente una stringa di grandi dimensioni) pigramente quando richiesto, integrandosi con l'interfaccia. Tuttavia, se l'indirizzo è utilizzato raramente da altri clienti, la memorizzazione di un riferimento all'entità Indirizzo funziona correttamente.

    
risposta data 01.12.2015 - 12:36
fonte