Condividi tramite


Documenti SDM (System Definition Model) inclusi nel controllo del codice sorgente

Aggiornamento: novembre 2007

Negli strumenti di progettazione di sistemi distribuiti l'ambito dei diagrammi sistema distribuiti, quali il diagramma applicazione o i diagrammi sistema, è a livello di soluzione, mentre l'ambito di altri documenti SDM (System Definition Model), ad esempio i file di definizione di applicazione (con estensione sdm), può essere a livello di progetto. È possibile eseguire l'archiviazione e l'estrazione di tali file nel controllo del codice sorgente mediante la stessa procedura utilizzata per gli altri file. È tuttavia necessario tenere presenti le considerazioni indicate di seguito relative alla modalità di interazione di tali documenti con il controllo del codice sorgente, in particolare durante la sincronizzazione.

Per ulteriori informazioni, vedere i seguenti argomenti:

Nelle sezioni seguenti sono disponibili ulteriori informazioni sull'interazione tra i documenti SDM e il controllo del codice sorgente:

  • Estrazione di versioni locali e di versioni server

  • Aggiunta di documenti SDM o di determinati file di progetto da una soluzione condivisa

  • Sincronizzazione nel controllo del codice sorgente

Estrazione di versioni locali e di versioni server

A seconda delle impostazioni del controllo del codice sorgente, è possibile scegliere di estrarre una versione locale o una versione server di un file. I documenti SDM non supportano tuttavia il ricaricamento durante la sincronizzazione. Se si modificano i file durante l'archiviazione e si procede quindi con l'estrazione della relativa versione server, la sincronizzazione con la soluzione potrebbe pertanto non essere eseguita, se è in corso il ricaricamento di tali file. Se si utilizza ad esempio l'integrazione del controllo del codice sorgente di Microsoft FrontPage con i progetti Web generati mediante Progettazione applicazioni, le modifiche apportate a tali progetti potrebbero essere automaticamente escluse dalla sincronizzazione, se è in corso il ricaricamento.

Suggerimento:

Per evitare tale situazione, estrarre il file prima di eseguire un'operazione che richiede il ricaricamento del file o impostare le opzioni di controllo del codice sorgente in modo da eseguire sempre l'estrazione della versione locale del file.

Aggiunta di documenti SDM o di determinati file di progetto da una soluzione condivisa

Se si sta utilizzando Controllo della versione di Team Foundation e si desidera aggiungere alla propria soluzione un documento SDM o determinati file di progetto, ad esempio file di codice, provenienti da un'altra soluzione, non è possibile utilizzare la finestra di dialogo Apri dal controllo del codice sorgente per aggiungere l'elemento alla soluzione. Questa finestra di dialogo non include infatti l'opzione che consente all'utente di selezionare un file o un elemento con un'estensione di file SDM o altre estensioni dei file di progetto specifiche, ad esempio estensioni dei file di codice. Per ulteriori informazioni, vedere Procedura: aprire soluzioni e progetti dal controllo della versione.

Per aggiungere questi file alla soluzione, vedere Procedura: aggiungere documenti SDM e file di progetto di soluzioni condivise in un controllo del codice sorgente.

Sincronizzazione nel controllo del codice sorgente

Quando vengono implementate determinate definizioni di applicazioni nel diagramma applicazioni, per ciascuna delle definizioni viene generato un progetto di applicazione. Nel progetto sono contenuti file di codice, file di configurazione (con estensione config) e un file sdm, il quale rappresenta un documento SDM contenente metadati relativi alla definizione di applicazione.

Quando si apportano modifiche al diagramma applicazioni oppure al codice o ai file config associati a un progetto, è necessario aggiornare il diagramma applicazioni e tutti i file sdm. Una volta implementata l'applicazione, il codice diventa la definizione principale anche in caso di sincronizzazione tra codice e diagrammi. Se il diagramma applicazioni è aperto, in Visual Studio viene eseguito il tentativo di sincronizzare immediatamente le modifiche. La sincronizzazione viene ad esempio attivata in caso di aggiunta di una definizione di servizio Web e di un file asmx al progetto di un'applicazione ASP.NET o in caso di esecuzione di modifiche del diagramma applicazioni che hanno impatto sui file sdm. Per ulteriori informazioni, vedere Sincronizzazione tra documenti SDM (System Definition Model).

Scenari che richiedono o che non richiedono l'estrazione ai fini della sincronizzazione

L'estrazione può o meno essere richiesta durante la sincronizzazione, in base allo scenario. Se eventuali file necessari per la sincronizzazione, ad esempio file di diagramma applicazioni (ad) o con estensione sdm, vengono archiviati nel controllo del codice sorgente di Visual Studio, viene eseguita l'estrazione automatica dei file necessari oppure viene richiesto di estrarre i file manualmente, a seconda delle impostazioni utente del controllo del codice sorgente configurate.

Nota:

È possibile che vengano visualizzate una o più richieste di estrazione, in base al numero di file necessari.

Se, ad esempio, una soluzione contiene un file di diagramma applicazioni (ad) e si aggiungono uno o più progetti, generati in precedenza per le applicazioni nel diagramma applicazioni, alla soluzione dal controllo del codice sorgente, i file sdm in tali progetti vengono estratti automaticamente oppure viene richiesto all'utente di estrarli manualmente. Non annullare l'estrazione perché il diagramma applicazioni verrà bloccato immediatamente se è aperto oppure alla successiva apertura. Per ulteriori informazioni, vedere Annullamento dell'estrazione e Risoluzione dei problemi relativi ai diagrammi applicazioni.

Suggerimento:

Quando si finisce di utilizzare i documenti SDM, quali i file con estensione sdm, archiviarli per consentire ad altri utenti di estrarli, ad esempio per aggiungere progetti con file sdm a soluzioni contenenti file di diagramma applicazioni.

Le impostazioni che rappresentano le voci dei file di configurazione (con estensione config) vengono memorizzate sia nei file sdm che nei file config, anche dopo l'implementazione. Le modifiche apportate alle impostazioni o ai vincoli mediante l'Editor impostazioni e vincoli o alle impostazioni in un file config rappresentate anche nel file sdm richiedono pertanto l'estrazione del diagramma applicazioni e del file sdm. Per ulteriori informazioni, vedere Applicazione delle impostazioni.

Nel caso dell'implementazione di un'applicazione ASP.NET con un servizio Web, le operazioni di servizio Web vengono invece definite dal file di classi del servizio Web e non vengono più rappresentate nel file di diagramma applicazioni (con estensione ad). Le modifiche apportate alle operazioni di servizio Web mediante la finestra Dettagli servizio Web o direttamente nel codice non richiedono pertanto l'estrazione del diagramma applicazioni, poiché hanno impatto sul file di classi del servizio Web. Per ulteriori informazioni, vedere Cenni preliminari sulle applicazioni ASP.NET nei diagrammi applicazioni.

Annullamento dell'estrazione

Quando richiesto, è possibile scegliere di annullare l'estrazione. Tale operazione impedisce tuttavia di effettuare la sincronizzazione dei file necessari in Visual Studio. A seconda delle modifiche che hanno richiesto l'estrazione, l'annullamento dell'estrazione potrebbe comportare le conseguenze riportate di seguito:

  • Viene ripristinato lo stato precedente le modifiche apportate mediante la finestra di progettazione: viene eseguito il ripristino dello stato precedente la modifica iniziale e tutte le modifiche successive.

  • Viene ripristinato lo stato precedente le modifiche apportate al codice o ai file di configurazione.

    Il file di diagramma applicazioni (con estensione ad) viene bloccato e reso disponibile in sola lettura. Nell'Elenco errori viene visualizzato un errore nel quale viene indicato che la sincronizzazione non è stata completata. Lo stato di sola lettura del diagramma applicazioni indica che non è possibile eseguirne la sincronizzazione con i file di progetto associati e che possono pertanto essere presenti informazioni non sincronizzate.

    Per risolvere questo problema, chiudere il diagramma, annullare le modifiche per le quali non è stato eseguito il ripristino dello stato precedente, quindi riaprire il diagramma per tentare di eseguirne la sincronizzazione. Per ulteriori informazioni, vedere Risoluzione dei problemi relativi ai diagrammi applicazioni.

  • Il codice potrebbe non essere compilato correttamente o potrebbero verificarsi degli errori di compilazione.

Se il diagramma applicazioni è archiviato nel controllo del codice sorgente, per eseguirne la sincronizzazione sarà necessario estrarlo. Se tuttavia il controllo del codice sorgente è impostato per l'estrazione della versione server del diagramma, il diagramma dovrà essere ricaricato. Poiché i documenti SDM non supportano il ricaricamento durante la sincronizzazione, non è possibile estrarre il diagramma. In tal caso, il diagramma non può essere sincronizzato e viene bloccato. Per risolvere il blocco di un diagramma applicazioni, è possibile chiudere e riaprire il diagramma, per tentare di eseguirne la sincronizzazione.

Per evitare tale situazione, estrarre il file prima di eseguire un'operazione che richiede il ricaricamento del file o impostare le opzioni di controllo del codice sorgente in modo da eseguire sempre l'estrazione della versione locale del file.

Ottenere la versione più recente di un documento SDM

Se si richiede la versione più recente di un documento SDM mentre il file di diagramma applicazioni (ad) è aperto, il diagramma verrà bloccato e visualizzato in sola lettura. Questa operazione richiede il ricaricamento del diagramma applicazioni e potrebbe non garantire la sincronizzazione di questi file. Per ulteriori informazioni, vedere Risoluzione dei problemi relativi ai diagrammi applicazioni.

Per sbloccare un diagramma applicazioni, chiuderlo e quindi riaprirlo.

Vedere anche

Riferimenti

Estrazione simultanea e modifiche ai documenti SDM (System Definition Model)

Altre risorse

Team Foundation - Documentazione

Cenni preliminari sugli strumenti di progettazione di sistemi distribuiti