Procedura: definire le relazioni tra i dati in LightSwitch
È possibile creare, modificare o eliminare le relazioni tra i dati utilizzando la finestra di progettazione dei dati in LightSwitch. Utilizzando le relazioni, è possibile creare schermate nelle quali i dati correlati interagiscono (ad esempio, una schermata che mostra sia i clienti che gli ordini).
Il documento include le sezioni seguenti:
Aggiunta di una relazione tra le tabelle o le entità della stessa origine dati
Aggiunta di una relazione tra tabelle o entità di origini dati separate
Modifica di una relazione
Impostazioni molteplicità
Impostazioni del comportamento di eliminazione
Per una dimostrazione video correlata, vedere Procedura: definizione dei dati personali in un´applicazione LightSwitch.
Aggiunta di una relazione tra le tabelle o le entità della stessa origine dati
È possibile utilizzare la finestra di progettazione dei dati di LightSwitch per aggiungere una relazione tra due tabelle nel database interno di LightSwitch. In alcuni casi, è anche possibile utilizzare la finestra di progettazione dei dati per aggiungere una relazione tra le entità della stessa origine dati esterna. In caso contrario, è necessario creare tali relazioni sul server e quindi aggiornare la connessione dati in LightSwitch. Per ulteriori informazioni sull'aggiornamento di una connessione a un'origine dati, vedere Procedura: connettersi ai dati.
Per aggiungere una relazione tra tabelle nel database interno di LightSwitch
In Esplora soluzioni aprire il menu di scelta rapida per una delle tabelle da utilizzare nella relazione, quindi scegliere Apri.
Nota
Per le applicazioni che sono state aggiornate a Visual Studio 2012 Update 2, nella barra Prospettiva scegliere la scheda Server.
Nella barra degli strumenti della Finestra di progettazione dati scegliere il pulsante Relazione.
Nella finestra di dialogo Aggiungi nuova relazione nella riga Nome scegliere le due tabelle alle quali si desidera applicare una relazione, ad esempio Clienti e Ordini.
Nella riga Molteplicità specificare come si desidera che queste tabelle siano correlate.
Vedere Impostazioni molteplicità.
Nella riga Comportamento in eliminazione specificare quello che si desidera che l'applicazione faccia se un utente tenta di eliminare un record in una tabella ma i dati esistono ancora nel record correlato nell'altra tabella, ad esempio, se un utente tenta di eliminare un cliente ma gli ordini emessi dal cliente esistono ancora.
Vedere Delete Behavior Settings.
Nella riga Proprietà di navigazione immettere un nome per ogni proprietà di navigazione, quindi fare clic sul pulsante OK.
Le proprietà di navigazione aiutano gli utenti ad esplorare le aree di una schermata che visualizza i dati correlati. Le proprietà di navigazione vengono visualizzate anche come oggetti in IntelliSense ed è possibile utilizzarle per costruire le espressioni LINQ in codice.
Per aggiungere una relazione tra le tabelle in un database associato
In Esplora soluzioni aprire il menu di scelta rapida per una delle tabelle da utilizzare nella relazione, quindi scegliere Apri.
Nota
Per le applicazioni che sono state aggiornate a Visual Studio 2012 Update 2, nella barra Prospettiva scegliere la scheda Server.
Nella barra degli strumenti della Finestra di progettazione dati scegliere il pulsante Relazione.
Si apre la finestra di dialogo Aggiungi nuova relazione.
Nella colonna A della riga Nome selezionare la tabella a cui si desidera applicare una relazione.
La tabella deve contenere una chiave primaria che verrà utilizzata dal lato primario della relazione.
Nella riga Molteplicità specificare come si desidera che queste tabelle siano correlate.
Vedere Impostazioni molteplicità.
Nella griglia di dati visualizzata nella parte inferiore della finestra di dialogo Aggiungi nuova relazione scegliere una proprietà sul lato Esterno della relazione.
Questa proprietà deve corrispondere al tipo di dati della proprietà chiave Principale.
Nota
Se la tabella contiene una chiave primaria composta, tutti i tipi di dati della chiave esterna devono corrispondere.
Nota
Per una relazione zero o uno-a-molti, la proprietà chiave Esterno non può essere un campo obbligatorio.Per una relazione uno-a-molti, la proprietà chiave Esterno deve essere un campo obbligatorio.Per una relazione zero o uno-a-uno, i valori della chiave primaria devono essere utilizzati da entrambi i lati della relazione.
Scegliere il pulsante OK.
Aggiunta di una relazione tra tabelle o entità di origini dati separate
È possibile utilizzare la finestra di progettazione dei dati LightSwitch per aggiungere una relazione tra tabelle o entità provenienti da origini dati differenti. Ad esempio, è possibile aggiungere una relazione tra una tabella nel database interno per LightSwitch e un'entità da un elenco SharePoint.
Per aggiungere una relazione tra due tabelle o entità da origini dati separate
In Esplora soluzioni aprire il menu di scelta rapida per una delle tabelle da utilizzare nella relazione, quindi scegliere Apri.
Nota
Per le applicazioni che sono state aggiornate a Visual Studio 2012 Update 2, nella barra Prospettiva scegliere la scheda Server.
Nella barra degli strumenti della Finestra di progettazione dati scegliere il pulsante Relazione.
Si apre la finestra di dialogo Aggiungi nuova relazione.
Nella riga Nome scegliere le due tabelle o entità alle quali si desidera applicare una relazione (ad esempio Clienti e Ordini).
Nella riga Molteplicità specificare come si desidera che queste tabelle o entità siano correlate.
Vedere Impostazioni molteplicità.
Nota
Notare che la riga Comportamento di eliminazione non è abilitata per questo tipo di relazione.
Nella riga Proprietà di navigazione fornire un nome per ogni proprietà di navigazione.
Le proprietà di navigazione aiutano gli utenti ad esplorare le aree di una schermata che visualizza i dati correlati. Le proprietà di navigazione vengono visualizzate anche come oggetti in IntelliSense ed è possibile utilizzarle per costruire le espressioni LINQ in codice.
Nella griglia di dati visualizzata nella parte inferiore della finestra di dialogo Aggiungi nuova relazione scegliere una proprietà da una tabella o un'entità e una proprietà correlata nell'altra tabella o entità, quindi scegliere il pulsante OK.
Queste proprietà si trovano dove le tabelle o le entità si collegano insieme. Ad esempio, è possibile selezionare la proprietà Id di un'entità Customer e la proprietà CustomerID di un'entità Order.
Modifica di una relazione
È possibile utilizzare la finestra di progettazione dei dati in LightSwitch per modificare o eliminare una relazione.
Per modificare una relazione esistente
In Esplora soluzioni aprire il menu di scelta rapida per una delle tabelle che si stanno utilizzando nella relazione, quindi scegliere Apri.
Nota
Per le applicazioni che sono state aggiornate a Visual Studio 2012 Update 2, nella barra Prospettiva scegliere la scheda Server.
In Data Designer scegliere la proprietà di navigazione che rappresenta la relazione con un'altra entità o tabella.
Ad esempio, un'entità Cliente potrebbe disporre di una proprietà denominata Ordini e utilizzata come proprietà di navigazione nella relazione cliente-ordini.
Nella finestra Proprietà scegliere il collegamento Modifica proprietà relazioni.
Si apre la finestra di dialogo Modifica relazione.
Per modificare la relazione, vedere la sezione appropriata più avanti in questo argomento:
Aggiunta di una relazione tra entità della stessa origine dati.
Aggiunta di una relazione tra entità di origini dati separate.
Scegliere OK per chiudere la finestra di dialogo Modifica relazione.
Per eliminare una relazione
In Esplora soluzioni aprire il menu di scelta rapida per una delle tabelle che si stanno utilizzando nella relazione, quindi scegliere Apri.
Nota
Per le applicazioni che sono state aggiornate a Visual Studio 2012 Update 2, nella barra Prospettiva scegliere la scheda Server.
In Progettazione dati, aprire il menu di scelta rapida per la riga connessione che rappresenta la relazione a un'altra entità o tabella e quindi scegliere Elimina relazioni.
Impostazioni molteplicità
Nella tabella seguente vengono descritte le combinazioni delle impostazioni di molteplicità che è possibile scegliere in LightSwitch.
Valore Da |
Per valutare |
Descrizione |
---|---|---|
One |
Zero o uno |
Un'istanza "Da" può avere una o più istanze "A", ma un'istanza "A" deve avere un'istanza "Da". |
One |
Molti |
Un'istanza "Da" può avere più istanze "A", ma un'istanza "A" deve avere un'istanza "Da." |
Zero o uno |
One |
Un'istanza "Da" deve avere un'istanza "A", ma un'istanza "A" può avere una o nessuna istanza "Da". |
Zero o uno |
Molti |
Un'istanza "Da" può disporre di molte istanze "A" e un'istanza "A" può avere una o nessuna istanza "Da." |
Molti |
One |
Un'istanza "Da" deve avere un'istanza "A", ma un'istanza "A" può avere molte istanze "Da." |
Molti |
Zero o uno |
Un'istanza "Da" può disporre di una o nessuna istanza "A" e un'istanza "A" può disporre di molte istanze "Da." |
Nota
Non è possibile specificare una relazione uno-a-uno, zero o uno-a-zero e molti-a-molti tramite la finestra di progettazione dei dati in LightSwitch.
Impostazioni del comportamento di eliminazione
Nella tabella seguente vengono descritte le opzioni che è possibile impostare per gestire ciò che accade quando un utente tenta di eliminare un record che è parte di una relazione. Alcune opzioni non sono disponibili per determinati tipi di relazioni.
Valore Comportamento di eliminazione |
Descrizione |
---|---|
Eliminazione a catena |
Quando viene eliminato un "Table1", eliminare tutte le istanze "Table2" correlate. |
Restricted |
"Table1" non può essere eliminato se esistono istanze Table2 correlate." Ad esempio, selezionare Limitato per specificare che non è possibile eliminare un cliente se il database contiene ordini correlati. |
Dissociare |
Quando "Table1" viene eliminato, impostare il riferimento su "Table1" sulle istanze "Table2" correlate a null. |