Passa ai contenuti principali

Post

Visualizzazione dei post da febbraio, 2011

TFS2010 Object Model: TeamProjectPicker

L’object model di TFS 2010 mette a disposizione una finestra per permettere ai nostri utenti di selezionare un server TFS, una project collection o un progetto. La finestra è implementata dalla classe TeamProjectPicker che si trova nel namespace Microsoft.TeamFoundation.Client (assembly Microsoft.TeamFoundation.Client.dll). TeamProjectPicker permette una certa versatilità perché può servire per selezionare una project collection, un progetto o una serie di progetti. Prima di vedere come si può ottenere ciò, vediamo come è strutturata la classe. La classe ha tre costruttori che permettono di gestire la possibilità di scegliere cosa è possibile selezionare e quale provider di credenziali utilizzare. In particolare, il costruttore più completo è il seguente: Public Sub New ( ByVal mode As TeamProjectPickerMode ,                  ByVal disableCollectionChange As Boolean ,                  ByVal credentialsProvider As ICredentialsProvider ) L’argomento mode, di tipo TeamProjectPi

101 Async samples

Vi segnalo un post di Alessandro Del Sole in cui viene riportata la notizia che sono disponibili, sul sito di Lucian Wischik un insieme di esempi sulle funzionalità di Async attualmente in CTP. L’indirizzo del sito è il seguente: AsyncSamplesSilverlight   Tag di Technorati: async ctp , examples

VB.NET: recuperiamo gli assembly referenziati nella nostra applicazione

La classe Assembly prevede il metodo GetReferencedAssembly() per recuperare l’elenco degli AssemblyName ralativi agli assembly referenziati da un determinato assembly. Il problema è che se abbiamo una struttura con più dll referenziate a catena, il metodo restituisce solo il primo livello della stessa catena. Supponiamo di avere la seguente struttura: ovvero il progetto AssemblyExtension referenzia la dll AssemblyExtensionLIB1 che, a sua volta, referenzia la AssemblyExtensionLIB2. In questo caso, il metodo GetReferencedAssembly(), applicato sull’assembly AssemblyExtension, restituisce il seguente elenco: Come si può vedere non c’è traccia della AssemblyExtensionLIB2. Il seguente metodo di estensione provvede ad eseguire un algoritmo ricorsivo per recuperare una lista di AssemblyName contenente tutte le reference dell’assembly: Imports System.Runtime.CompilerServices Imports System.Reflection   Module AssemblyExtension       < Extension ()> _      P

TFS2010 Object Model: gestiamo le project collections

In questo post vorrei porre l’attenzione su come utilizzare l’object model di TFS per gestire le Project Collection, cioè come utilizzare  da codice i servizi messi a disposizione dalla piattaforma TFS per creare, eseguire il detach o l’attach delle project collections del nostro server. L’object model di TFS mette a disposizione l’interfaccia ITeamProjectCollectionService implementata da quelle classi che hanno la capacità di gestire le project collections. Per prima cosa recuperiamo questa classe, utilizzando il metodo GetService (ereditato dalla classe TfsConnection) della TfsConfigurationServer: Public Sub GetTeamProjectService()     tpcService = CType ( tfs .GetService( Of ITeamProjectCollectionService )(), ITeamProjectCollectionService )      Console .WriteLine( "ITeamProjectCollectionService ricavato!" ) End Sub dove tfs è un’istanza di TfsConfigurationServer ricavata tramite il seguente pezzo di codice: Public Sub CreateTFSInstance( ByVa