Attività ResolveAssemblyReference
Determina tutti gli assembly che dipendono dagli assembly specificati.Include le dipendenze di secondo ed n ordine.
Parametri
Nella tabella riportata di seguito sono descritti i parametri dell'attività ResolveAssemblyReference.
Parametro |
Descrizione |
---|---|
AllowedAssemblyExtensions |
Parametro String[] facoltativo. Le estensioni di file di assembly da utilizzare per la risoluzione dei riferimenti.Le estensioni di file predefinite sono exe e dll. |
AllowedRelatedFileExtensions |
Parametro String[] facoltativo. Le estensioni dei file da utilizzare per ricerca di file reciprocamente correlati.Le estensioni predefinite sono pdb e xml. |
AppConfigFile |
Parametro String facoltativo. Specifica un file app.config dal quale analizzare ed estrarre i mapping bindingRedirect.Se si specifica questo parametro, il parametro AutoUnify deve essere impostato su false. |
AutoUnify |
Parametro Boolean facoltativo. Questo parametro viene utilizzato per la compilazione di assembly, ad esempio DLL, che non possono disporre di un file App.Config normale. Se true, il grafico delle dipendenze che ne risulta viene automaticamente trattato come un file anApp.Config passato al parametro AppConfigFile.Nel file App.Config virtuale è inclusa una voce bindingRedirect per ogni set di assembly in conflitto, in modo che venga scelto l'assembly della versione più recente.Di conseguenza non verrà mai visualizzato alcun avviso relativo agli assembly in conflitto in quanto tutti i conflitti saranno stati risolti. Se true, per ogni mapping distinto verrà creato un commento ad alta priorità nel quale vengono mostrate la versione nuova e quella vecchia e il valore di AutoUnify, vale a dire true. Se true, il parametro AppConfigFile deve essere vuoto Se false, non viene eseguito alcun nuovo mapping delle versioni degli assembly in modo automatico.Se sono presenti due versioni di un assembly, viene generato un avviso. Se false, per ogni conflitto distinto tra due versioni diverse dello stesso assembly viene creato un commento a priorità elevata.Questi commenti sono seguiti da un solo avviso.L'avviso presenta un codice di errore univoco e il testo "Sono stati rilevati conflitti tra versioni diverse dello stesso assembly dipendente". |
Assemblies |
Parametro ITaskItem[] facoltativo. Specifica gli elementi per cui si devono identificare i percorsi completi e le dipendenze.Questi elementi possono avere nomi semplici come "System" o nomi sicuri come "System, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089." Gli elementi passati a questo parametro possono facoltativamente includere i seguenti metadati:
|
AssemblyFiles |
Parametro ITaskItem[] facoltativo. Specifica un elenco di percorsi completi di assembly di cui cercare le dipendenze. Gli elementi passati a questo parametro possono facoltativamente includere i seguenti metadati:
|
AutoUnify |
Parametro Boolean facoltativo. Se è impostato su true, il grafico delle dipendenze risultante verrà automaticamente considerato come se nel parametro AppConfigFile venisse passato un file App.Config.Il file App.Config virtuale include una voce bindingRedirect per ogni insieme di assembly in conflitto, in modo che venga scelto l'assembly della versione più recente.Di conseguenza non verrà mai visualizzato alcun avviso relativo agli assembly in conflitto in quanto tutti i conflitti saranno stati risolti.Ogni nuovo mapping produrrà un commento a elevata priorità in cui verranno indicate le versioni precedenti e quelle nuove e verrà specificato che questa operazione è stata eseguita automaticamente in quanto AutoUnify era impostato su true. Se il parametro è impostato su false, non verrà eseguito alcun mapping automatico delle versioni degli assembly.In presenza di due versioni di un assembly, verrà generato un avviso.Ogni conflitto tra versioni differenti dello stesso assembly produrrà un commento a elevata priorità.Una volta visualizzati tutti questi commenti, verrà visualizzato un singolo avviso con un codice di errore univoco e il testo "Sono stati rilevati conflitti tra versioni diverse dello stesso assembly dipendente". Il valore predefinito è false. |
CandidateAssemblyFiles |
Parametro String[] facoltativo. Specifica un elenco di assembly da utilizzare per il processo di ricerca e risoluzione.I valori passati a questo parametro devono essere nomi file assoluti o nomi file relativi al progetto. Gli assembly in questo elenco verranno considerati quando il parametro SearchPaths conterrà {CandidateAssemblyFiles} tra i percorsi. |
CopyLocalDependenciesWhenParentReferenceInGac |
Parametro [Boolean] facoltativo. Se true, per determinare se una dipendenza deve essere copiata localmente, uno dei controlli effettuati consiste nel verificare se per il riferimento padre nel file di progetto sono impostati i metadati Private.Se impostati, il valore Private viene utilizzato come dipendenza. Se i metadati non sono impostati, la dipendenza verrà sottoposta agli stessi controlli del riferimento padre.Uno di questi controlli consiste nel verificare se il riferimento è incluso nella GAC.Se un riferimento si trova nella GAC, non viene copiato localmente, poiché si presuppone che sia incluso anche nella GAC del computer di destinazione.Tale condizione si applica solo a un riferimento specifico, non alle relative dipendenze. Ad esempio, un riferimento nel file di progetto presente nella GAC non viene copiato localmente, mentre le relative dipendenze vengono copiate in modalità locale in quanto non sono incluse nella GAC. Se false, viene verificato se i riferimenti al file di progetto sono presenti nella GAC e se non lo sono, vengono copiati localmente. Per le dipendenze, si verificherà se sono incluse nella GAC e anche se il riferimento padre dal file di progetto è presente nella GAC. Se il riferimento padre dal file di progetto è incluso nella GAC, la dipendenza non viene copiata localmente. A prescindere dal fatto che questo parametro sia true o false, se sono presenti più riferimenti padre di cui alcuni non si trovano nella GAC, tutti i riferimenti padre vengono copiati localmente. |
CopyLocalFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Restituisce i file nei parametri ResolvedFiles, ResolvedDependencyFiles, RelatedFiles, SatelliteFiles e ScatterFiles con metadati dell'elemento CopyLocal impostati sul valore true. |
FilesWritten |
Parametro di output ITaskItem[] facoltativo. Contiene gli elementi scritti su disco. |
FindDependencies |
Parametro Boolean facoltativo. Se è impostato su true, le dipendenze verranno trovate.In caso contrario, verranno trovati solo i riferimenti primari.Il valore predefinito è true. |
FindRelatedFiles |
Parametro Boolean facoltativo. Se è impostato su true, verranno trovati i file correlati come i file PDB e XML.Il valore predefinito è true. |
FindSatellites |
Parametro Boolean facoltativo. Se è impostato su true, verranno trovati gli assembly satellite.Il valore predefinito è true.. |
FindSerializationAssemblies |
Parametro Boolean facoltativo. Se true, viene eseguita la ricerca degli assembly di serializzazione.Il valore predefinito è true. |
FullFrameworkAssemblyTables |
Parametro ITaskItem[] facoltativo. Specifica gli elementi che dispongono dei metadati "FrameworkDirectory" per associare un elenco redist a una directory del framework specifica.Se l'associazione non viene eseguita, verrà registrato un errore.Nella logica di risoluzione del riferimento all'assembly (RAR, Resolve Assembly Reference), se FrameworkDirectory non è impostato, viene utilizzata la directory del framework di destinazione. |
FullFrameworkFolders |
Parametro [String][] facoltativo. Specifica il set di cartelle in cui è contenuta una directory RedistList.Questa directory rappresenta il framework completo per un determinato profilo client, ad esempio, %programfiles%\reference assemblies\microsoft\framework\v4.0. |
FullTargetFrameworkSubsetNames |
Parametro String[] facoltativo. Contiene un elenco di nomi di sottoinsieme .NET Framework di destinazione.Se il nome di un sottoinsieme dell'elenco corrisponde a uno presente nella proprietà di tipo nome TargetFrameworkSubset, il sistema esclude quel particolare sottoinsieme .NET Framework di destinazione in fase di compilazione. |
IgnoreDefaultInstalledAssemblyTables |
Parametro Boolean facoltativo. Se true, vengono ricercate e utilizzate le tabelle aggiuntive dell'assembly installato ("elenchi redist") presenti nella directory \RedistList sotto TargetFrameworkDirectories.Il valore predefinito è false.. |
IgnoreDefaultInstalledAssemblySubsetTables |
Parametro Boolean facoltativo. Se true, vengono ricercate e utilizzate le tabelle aggiuntive del sottoinsieme dell'assembly installato ("Elenchi Subset") presenti nella directory \SubsetList sotto TargetFrameworkDirectories.Il valore predefinito è false.. |
InstalledAssemblySubsetTables |
Parametro ITaskItem[] facoltativo. Contiene un elenco di file XML che specificano gli assembly previsti nel sottoinsieme di destinazione. Facoltativamente, gli elementi in questo elenco possono specificare i metadati "FrameworkDirectory" per associare un oggetto InstalledAssemblySubsetTable a una particolare directory del framework. Se è presente un solo elemento TargetFrameworkDirectories, qualsiasi elemento in questo elenco privo dei metadati "FrameworkDirectory" viene trattato come se fosse impostato sul valore univoco passato a TargetFrameworkDirectories. |
InstalledAssemblyTables |
Parametro String facoltativo. Contiene un elenco di file XML che specificano gli assembly che si prevede siano installati nel computer di destinazione. Quando InstalledAssemblyTables è impostato, le versioni precedenti degli assembly nell'elenco vengono unite nelle versioni più recenti elencate nell'XML.Inoltre, gli assembly che hanno l'impostazione InGAC='true' sono considerati prerequisiti e sono impostati su CopyLocal='false' a meno che non siano sottoposti a override esplicito. Facoltativamente, gli elementi in questo elenco possono specificare i metadati "FrameworkDirectory" per associare un oggetto InstalledAssemblyTable a una particolare directory del framework.Tuttavia, questa impostazione viene ignorata a meno che il nome Redist inizi con "Microsoft-Windows-CLRCoreComp". Se è presente un solo elemento TargetFrameworkDirectories, qualsiasi elemento in questo elenco privo dei metadati "FrameworkDirectory" viene trattato come se fosse impostato sul valore univoco passato a TargetFrameworkDirectories. |
LatestTargetFrameworkDirectories |
Parametro String[] facoltativo. Specifica un elenco di directory in cui sono contenuti gli elenchi redist per il framework più aggiornato che può essere impostato come destinazione sul computer.Se non è impostato, verrà utilizzato il framework con la versione più recente installata nel computer per un determinato identificatore del framework di destinazione. |
ProfileName |
Parametro [String] facoltativo.
|
RelatedFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene file correlati, come i file XML e PDB che hanno lo stesso nome base come riferimento. I file elencati in questo parametro possono facoltativamente contenere i seguenti metadati:
|
ResolvedDependencyFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene i percorsi di n ordine delle dipendenze.Questo parametro non include i riferimenti primari di primo ordine, che sono contenuti nel parametro ResolvedFiles. Gli elementi di questo parametro contengono facoltativamente i seguenti metadati:
|
ResolvedFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene un elenco di tutti i riferimenti primari risolti in percorsi completi. Gli elementi di questo parametro contengono facoltativamente i seguenti metadati:
|
SatelliteFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Specifica i file satellite trovati.Tali file saranno CopyLocal=true se il riferimento o la dipendenza che ha generato questo elemento è CopyLocal=true. Gli elementi di questo parametro contengono facoltativamente i seguenti metadati:
|
ScatterFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene i file di tipo scatter associati a uno degli assembly specificati. Gli elementi di questo parametro contengono facoltativamente i seguenti metadati:
|
SearchPaths |
Parametro String[] obbligatorio. Specifica le directory o i percorsi speciali in cui viene eseguita la ricerca dei file su disco che rappresentano gli assembly.L'ordine in cui sono elencati i percorsi di ricerca è determinante.Per ogni assembly la ricerca nell'elenco dei percorsi viene eseguita da sinistra verso destra.Quando viene trovato un file che rappresenta l'assembly, la ricerca viene interrotta e inizia la ricerca dell'assembly successivo. Questo parametro accetta i seguenti tipi di valore:
|
SerializationAssemblyFiles |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene qualsiasi assembly di serializzazione XML trovato.Tali elementi sono contrassegnati CopyLocal=true unicamente se il riferimento o la dipendenza di cui sono conseguenza è CopyLocal=true. Con i metadati Boolean CopyLocal viene indicato se il riferimento dato deve essere copiato nella directory di output. |
Silent |
Parametro Boolean facoltativo. Se è impostato su true, non verrà registrato alcun messaggio.Il valore predefinito è false. |
StateFile |
Parametro String facoltativo. Specifica un nome file che indica se salvare lo stato di compilazione intermedio per questa attività. |
SuggestedRedirects |
Parametro di output di sola lettura ITaskItem[] facoltativo. Contiene un elemento per ogni singola identità dell'assembly in conflitto, indipendentemente dal valore del parametro AutoUnify.Sono incluse le impostazioni cultura e il PKT la cui voce bindingRedirect nel file di configurazione dell'applicazione non è corretta. Ogni elemento contiene facoltativamente le informazioni seguenti:
|
TargetedRuntimeVersion |
Parametro String facoltativo. Specifica la versione runtime da utilizzare come destinazione, ad esempio, 2.0.57027 o v2.0.57027. |
TargetFrameworkDirectories |
Parametro String[] facoltativo. Specifica il percorso della directory .NET Framework di destinazione.Questo parametro è necessario per stabilire lo stato CopyLocal degli elementi risultanti. Se non viene specificato, nessun elemento risultante avrà il valore CopyLocal impostato su true, a meno che il valore di metadati Private non sia impostato esplicitamente su true nel relativo elemento di origine. |
TargetFrameworkMoniker |
Parametro String facoltativo. Elemento TargetFrameworkMoniker da monitorare, se presente.Viene utilizzato per la registrazione. |
TargetFrameworkMonikerDisplayName |
Parametro String facoltativo. Nome visualizzato dell'elemento TargetFrameworkMoniker da monitorare, se presente.Viene utilizzato per la registrazione. |
TargetFrameworkSubsets |
Parametro String[] facoltativo. Contiene un elenco di nomi di sottoinsieme .NET Framework di destinazione in cui eseguire la ricerca delle directory .NET Framework di destinazione. |
TargetFrameworkVersion |
Parametro String facoltativo. La versione di .NET Framework di destinazione del progetto.Il valore predefinito è vuoto e indica che non è disponibile un filtro per i riferimenti di .NET Framework di destinazione. |
TargetProcessorArchitecture |
Parametro String facoltativo. L'architettura preferita del processore di destinazione.Utilizzato per risolvere i riferimenti alla Global Assembly Cache (GAC). Il parametro può essere impostato su x86, IA64 o AMD64. Se questo parametro non è specificato, verranno presi in considerazione innanzitutto gli assembly che corrispondono all'architettura del processo attualmente in esecuzione.Se non viene trovato alcun assembly, verranno presi in considerazione gli assembly nella Global Assembly Cache per i quali l'elemento ProcessorArchitecture è impostato sul valore MSIL o su nessun valore ProcessorArchitecture. |
Note
Oltre ai parametri sopra elencati, questa attività eredita i parametri dalla classe TaskExtension, che eredita dalla classe Task.Per un elenco di tali parametri aggiuntivi e le relative descrizioni, vedere Classe di base TaskExtension.