Condividi tramite


Estensione della gestione degli elementi di lavoro tramite il modello a oggetti del client per Team Foundation

È possibile creare a livello di codice, modificare e individuare bug, attività e altri tipi di elementi di lavoro tramite il modello a oggetti per gli elementi di lavoro.Per accedere agli elementi di lavoro, è necessario connettersi a Visual Studio Team Foundation Server, come descritto in Connettersi a Team Foundation Server da un'applicazione console.

Attività comuni

Creare un elemento di lavoro tramite il modello a oggetti del client per Team Foundation

Modificare e salvare elementi di lavoro tramite il modello a oggetti del client per Team Foundation

Eseguire una query per trovare bug, attività e altri elementi di lavoro

WorkItemStore.GetWorkItem

(Libreria di codice) Enumerare le query archiviati

CodePlex () controlli personalizzati per il TFS Gestione elementi di lavoro

Scrittura di codice per diversi tipi di elementi di lavoro tramite il modello a oggetti del client per Team Foundation

Considerazioni su threading

Se l'applicazione è un'applicazione multithreading, deve creare WorkItemStore per ogni thread.Se i thread condividono WorkItemStore, l'applicazione non è appropriato.Se WorkItemStore e gli oggetti correlati a elaborare, tutti gli altri thread che condividono WorkItemStore verranno bloccati.

Il costo di inizializzare WorkItemStore è significativo.Pertanto, è necessario inizializzare l'oggetto e utilizzare un riferimento per la durata del thread.Ad esempio, se si utilizza il modello a oggetti degli elementi di lavoro in un'applicazione ASP.NET, è necessario memorizzare l'oggetto WorkItemStore nella sessione utente o creare un pool di thread e utilizzare un singolo oggetto WorkItemStore per ogni thread.

Metadati

Il database degli elementi di lavoro contiene un set di metadati che descrivono i tipi di elementi di lavoro, di campi, di regole, di form e altre informazioni su come i tipi di elementi di lavoro vengono configurati e utilizzati in ogni progetto team.WorkItemStore ottiene e mantiene una cache locale di quella dei metadati.I metadati vengono modificati ogni volta che qualsiasi di questi elementi è aggiornato.Ad esempio, se un valore verrà aggiunto all'elenco di valori consentiti per un campo, un'altra versione dei metadati viene creata.Il modello a oggetti del client per gli elementi di lavoro verifica che il WorkItemStore sia utilizzata la versione più recente dei metadati.Il sistema esegue questa verifica ogni volta che si chiama un metodo che restituisce un round trip al server, come WorkItemStore.Query o WorkItem.Save.Se esiste una versione più recente dei metadati, il sistema ottiene i metadati aggiornati e quindi genera l'evento WorkItemStore.MetadataChanged.

Se il codice è interessato modificando i metadati, il codice deve rispondere a questo evento.Ad esempio, il codice che visualizza il form elemento di lavoro devono rispondere a questo evento in modo che la versione più recente del form viene visualizzato.

Il codice può richiedere la relativa istanza WorkItemStore per controllare la disponibilità di un aggiornamento alla cache dei metadati locali chiamando WorkItemStore.SyncToCache.Ad esempio, se l'applicazione utilizza più oggetti WorkItemStore, quando riceve un evento WorkItemStore.MetadataChanged, il codice può utilizzare WorkItemStore.SyncToCache per chiedere agli oggetti WorkItemStore a utilizzare la versione aggiornata della cache dei metadati.

Il codice può richiedere la relativa istanza WorkItemStore al server per i metadati chiamando WorkItemStore.RefreshCacheaggiornati.

Risorse supplementari

Estensione di Team Foundation

(Libreria di codice) Esempi di elemento di lavoro

Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore

Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem