Domanda

Abbiamo un semplice modello di dominio:Contatto, TelephoneNumber e ContactRepository.Contatto entità, ha un campo di identità.TelephoneNumber è il valore tipico oggetto:non ha identità e non poteva essere caricati separatamente dal Contatto istanza.

Dall'altro lato dobbiamo applicazione web per la gestione dei contatti.1 ° pagina c'è la "ContactList", la pagina successiva è "Contatto/C0001", che mostra i dettagli del contatto e l'elenco dei numeri di telefono.

Dobbiamo implementare telepone numeri form di modifica.La prima approssimazione pensiero è quello di aggiungere qualche pagina che sarà navigabile come 'ThelephoneNumber/T0001'.

Ma ThelephoneNumber è il Valore di un Oggetto di classe e di istanza non poteva essere identificato in questo modo.

Qual è la migliore pratica per la risoluzione di questo problema?Come possiamo identificare non identifieble oggetti in stateless applicazioni?

È stato utile?

Soluzione

Il valore di oggetti stato identificare quel particolare esempio?Se non si può solo passare di nuovo il valore vecchio e il nuovo valore quando il modulo di modifica è presentata, quindi aggiornare gli oggetti con il vecchio stato, al nuovo stato.

Avrei preferito avere un like alla pagina di Contatto/C0001/ThelephoneNumber, e utilizzare l'id del contatto e il valore di oggetti di classe per identificare l'istanza che si desidera modificare.

A meno che non ho completamente frainteso quello che stai chiedendo.

Altri suggerimenti

Vorrei fare il TelephoneNumber contengono solo un mucchio di numeri (magari fare il plurale), e fare riferimento ad esso in questo modo:Contatto/C0001/TelephoneNumber(s)

In pratica trovo sempre più facile dare il numero di telefono di un'identità, anche se non è strettamente necessario in termini di design.

Se si tratta di un valore in senso stretto oggetto che non può esistere al di fuori del contesto del Contatto, che indica che una buona interfaccia utente può chiamare il numero di telefono per essere modificato all'interno della pagina di contatto piuttosto che sulla propria pagina.

Tuttavia, credo che Marc Gear soluzione è un bene se si decide contro uno di questi due approcci.

Nonostante quello che molti vorrebbero credere, non può essere puro al 100%.

I tuoi oggetti di valore bisogno di un qualche tipo di campo di Identità.A volte è qualcosa di unico per un oggetto come un numero di telefono, a volte ci dovrà essere qualcosa di artificiale, come TelephoneNumber.Id.

Prima si accetta questo, meglio per voi :-)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top