Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Определяет все сборки, которые зависят от указанных сборок, включая зависимости второго и n-го порядка. См. также сведения об устранении ошибок сборки со ссылками на сборку.
Параметры
В следующей таблице приводятся параметры задачи ResolveAssemblyReference.
| Параметр | Описание |
|---|---|
AllowedAssemblyExtensions |
Необязательный параметр String[].Расширения имен файлов сборки для использования при разрешении ссылок. Расширения имен файлов по умолчанию и exe dll. |
AllowedRelatedFileExtensions |
Необязательный параметр String[].Расширения имен файлов для поиска файлов, связанных друг с другом. Расширения по умолчанию и pdb xml. |
AppConfigFile |
Необязательный параметр String.Указывает файл app.config, из которого анализируются и извлекаются сопоставления bindingRedirect. Если этот параметр указан, параметр AutoUnify должен иметь значение false. |
Assemblies |
Необязательный параметр ITaskItem[].Указывает элементы, для которых следует идентифицировать полные пути и зависимости. Имена этих элементов могут быть как простыми, например "System", так и строгими, например "System, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089". Элементы, переданные в этот параметр, могут дополнительно иметь метаданные следующего элемента: - Private: значение Boolean . Если значение true, элемент копируется локально. Значение по умолчанию — true.- HintPath: значение String . Указывает путь и имя файла для использования в качестве ссылки. Эти метаданные используются при {HintPathFromItem} указании в параметре SearchPaths . Значение по умолчанию — пустая строка.- SpecificVersion: значение Boolean . Если значение true, имя, указанное в атрибуте Include , должно в точности совпадать. Если false, любая сборка с тем же простым именем работает. Если SpecificVersion не указано, задача проверяет значение в Include атрибуте элемента. Если атрибут является простым именем, он ведет себя, как если бы параметр SpecificVersion имел значение false. Если атрибут является строгим именем, он ведет себя, как если бы параметр SpecificVersion имел значение true.При использовании типа элемента ссылки атрибут Include должен быть полным фьюжн-именем сборки, которую необходимо разрешить. Сборка разрешается, только если фьюжн точно совпадает с атрибутом Include .Если проект предназначен для определенной версии .NET Framework и ссылается на сборку, скомпилированную для более поздней версии .NET Framework, ссылка разрешается, только если для SpecificVersion задано значение true.Если проект предназначен для профиля и ссылается на сборку, которая не указана в профиле, ссылка разрешается только в том случае, если он SpecificVersion установлен true.- ExecutableExtension: значение String . Если параметр присутствует, у разрешенной сборки должно быть это расширение. Если он отсутствует, dll сначала следует за каждым проверяемым каталогом .exe.- SubType: значение String . Только элементы с пустыми SubType метаданными разрешаются в полные пути сборки. Элементы с метаданными nonempty SubType игнорируются.- AssemblyFolderKey: значение String . Эти метаданные поддерживаются для обратной совместимости. Они указывают пользовательский раздел реестра, такой как hklm\<VendorFolder>, который Assemblies следует использовать для разрешения ссылок на сборки. |
AssemblyFiles |
Необязательный параметр ITaskItem[].Указывает список полных сборок, для которых необходимо найти зависимости. Элементы, переданные в этот параметр, могут дополнительно иметь метаданные следующего элемента: - Private: необязательное значение Boolean . Если задано значение true, элемент копируется локально.- FusionName: необязательные метаданные String . Указывает простое или строгое имя для этого элемента. Если этот атрибут присутствует, он может сэкономить время, так как файл сборки не должен быть открыт для получения имени. |
AssemblyInformationCacheOutputPath |
Необязательный параметр String.Если принимает ненулевое значение, сериализует не учитывающие компьютер сведения о входных данных AssemblyFiles в именованный файл. Этот параметр переопределяет обычный кэш, поэтому используйте этот параметр, только если вы создаете пакет SDK со многими ссылками и планируете отправить кэш клиентам. |
AssemblyInformationCachePaths |
Необязательный параметр ITaskItem. Если значение null не равно null, этот набор кэшей используется в качестве входных данных, если MSBuild не может найти обычный кэш в папке obj. Обычно предоставляется в пакете SDK для повышения производительности первой сборки. |
AutoUnify |
Необязательный параметр Boolean.Этот параметр используется для сборки сборок, таких как библиотеки DLL, которые не могут иметь обычный файл App.Config . Если задано значение true, полученная схема зависимостей автоматически обрабатывается, как если бы файл App.Config был передан в параметр AppConfigFile. Этот виртуальный файл App.Config содержит запись bindingRedirect для каждого конфликтующего набора сборок таким образом, что выбирается сборка самой последней версии. Вследствие этого предупреждение о конфликтующих сборках никогда не появляется, так как каждый конфликт разрешается.Когда trueкаждое различающееся переназначает комментарий с высоким приоритетом, показывающий старые и новые версии, и это AutoUnify было true.AppConfigFile Если trueпараметр должен быть пустым.Если задано значение false, повторное сопоставление версий сборки не происходит автоматически. При наличии двух версий сборки возникает предупреждение.Если задано значение false, каждый отдельный конфликт между двумя версиями одной сборки приводит к комментарию с высоким приоритетом. После этих комментариев следует одно предупреждение. Предупреждение содержит уникальный код ошибки и содержит текст, который считывает "Найденные конфликты между различными версиями ссылочных и зависимых сборок".Значение по умолчанию — false. |
CandidateAssemblyFiles |
Необязательный параметр String[].Указывает список сборок, используемых в процессе поиска и разрешения. Значения, переданные в этот параметр, должны быть абсолютными именами файлов или именами файлов проекта. Сборки в этом списке считаются, когда SearchPaths параметр содержит {CandidateAssemblyFiles} в качестве одного из путей, которые следует рассмотреть. |
CopyLocalDependenciesWhenParentReferenceInGac |
Необязательный параметр Boolean. Если задано значение true, для определения того, следует ли копировать зависимость локально, проверяется, заданы ли в родительской ссылке в файле проекта частные метаданные. Если значение задано, частное значение используется в качестве зависимости. Если метаданные не заданы, зависимость проходит те же проверки, что и родительская ссылка. Одна из этих проверок выполняется, чтобы узнать, находится ли ссылка в глобальном кэше сборок. Если ссылка находится в GAC, она не копируется локально, так как предполагается, что она находится в GAC на целевом компьютере. Это применяется только к конкретной ссылке, а не к ее зависимостям. Например, ссылка в файле проекта, который находится в GAC, не копируется локально, но его зависимости копируются локально, так как они не находятся в GAC. Если значение false, ссылки на файлы проекта проверяются, есть ли они в GAC и копируются локально. Зависимости проверяются, есть ли они в GAC, а также проверяются, есть ли родительская ссылка из файла проекта в GAC. Если родительская ссылка из файла проекта находится в GAC, зависимость не копируется локально. Имеет ли этот параметр значение true или false, если в GAC есть несколько родительских ссылок, а все из них копируются локально. |
CopyLocalFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Возвращает каждый файл в параметрах ResolvedFiles, ResolvedDependencyFiles, RelatedFiles, SatelliteFilesи ScatterFiles , который содержит метаданные элемента CopyLocal со значением true. |
DependsOnNETStandard |
Выходной параметр Boolean. Указывает, зависит ли любая из разрешенных первичных ссылок от .NET Standard. |
DependsOnSystemRuntime |
Выходной параметр Boolean. Указывает, зависит ли любая из разрешенных первичных ссылок от System.Runtime. |
DoNotCopyLocalIfInGac |
Необязательный параметр Boolean.Включает устаревший режим для определения CopyLocal. Если значение true, ссылки на сборки не будут скопированы локально, если они найдены в GAC. Если значение false, сборки копируются локально, если они не найдены только в GAC. Значение по умолчанию — false. |
FilesWritten |
Необязательный выходной параметр ITaskItem[] .Содержит элементы, записанные на диск. |
FindDependencies |
Необязательный параметр Boolean.Если trueобнаружены зависимости. В противном случае выполняется поиск только первичных ссылок. Значение по умолчанию — true. |
FindDependenciesOfExternallyResolvedReferences |
Необязательный параметр Boolean.Принудительный обход зависимостей, даже если в метаданных ссылки есть пометка ExternallyResolved=true. |
FindRelatedFiles |
Необязательный параметр Boolean.Если trueнайдены связанные файлы, такие как pdb файлы и xml файлы. Значение по умолчанию — true. |
FindSatellites |
Необязательный параметр Boolean.При trueобнаружении вспомогательных сборок. Значение по умолчанию — true.. |
FindSerializationAssemblies |
Необязательный параметр Boolean.Если значение true, задача ищет сборки сериализации. Значение по умолчанию — true. |
FullFrameworkAssemblyTables |
Необязательный параметр ITaskItem[].Указывает элементы, имеющие FrameworkDirectory метаданные для связывания списка redist с определенным каталогом платформы. Если связь не сделана, регистрируется ошибка. Логика разрешения ссылок на сборку (RAR) использует целевой каталог платформы, если FrameworkDirectory не задан. |
FullFrameworkFolders |
Необязательный параметр System.String[].Указывает папки, содержащие каталог RedistList. Этот каталог представляет полную платформу для заданного клиентского профиля, например %programfiles%\reference assemblies\microsoft\framework\v4.0. |
FullTargetFrameworkSubsetNames |
Необязательный параметр String[].Содержит список имен подсети целевой платформы. Если имя подсети в списке совпадает с именем в свойстве имени TargetFrameworkSubset , система исключает эту подсеть целевой платформы во время сборки. |
IgnoreDefaultInstalledAssemblyTables |
Необязательный параметр Boolean.Если значение true, задача ищет и использует дополнительные установленные таблицы сборок (или "списки Redist"), которые находятся в каталоге \RedistList в разделе TargetFrameworkDirectories. Значение по умолчанию — false.. |
IgnoreDefaultInstalledAssemblySubsetTables |
Необязательный параметр Boolean.Если значение true, задача ищет и использует дополнительные установленные таблицы подмножеств сборки (или "списки подмножеств"), которые находятся в каталоге \SubsetList в разделе TargetFrameworkDirectories. Значение по умолчанию — false.. |
IgnoreTargetFrameworkAttributeVersionMismatch |
Необязательный параметр Boolean.Если trueзадача разрешает сборки, предназначенные для более высокой платформа .NET Framework версии, чем текущий проект. Значение по умолчанию — falseпропускает эти ссылки. |
IgnoreVersionForFrameworkReferences |
Необязательный параметр Boolean.Если первичная ссылка является сборкой платформы, сведения о ее версии игнорируются и выполняется фактическое разрешение сборки платформы из текущей целевой платформы. |
InstalledAssemblySubsetTables |
Необязательный параметр ITaskItem[].Содержит список XML-файлов, которые указывают сборки, ожидающиеся в целевой подсети. В качестве параметра элементы в этом списке могут указывать FrameworkDirectory метаданные для связывания InstalledAssemblySubsetTableс каталогом определенной платформы. Если есть только один TargetFrameworkDirectories элемент, то все элементы в этом списке, которые не имеют FrameworkDirectory" метаданных, обрабатываются так, как если бы они были заданы для уникального значения, переданного TargetFrameworkDirectoriesв . |
InstalledAssemblyTables |
Необязательный параметр String.Содержит список XML-файлов, указывающих сборки, которые должны быть установлены на целевом компьютере. Если задано значение InstalledAssemblyTables , более ранние версии сборок в списке объединяются в более новые версии, перечисленные в XML-файле. Кроме того, сборки с параметром InGAC='true" считаются предварительными условиями и задаются только CopyLocal='false' в том случае, если явно переопределено.В качестве параметра элементы в этом списке могут указывать FrameworkDirectory метаданные для связывания InstalledAssemblyTable с определенным каталогом платформы. Однако этот параметр пропускается, если имя Redist не начинается сMicrosoft-Windows-CLRCoreComp.Если есть только один TargetFrameworkDirectories элемент, то все элементы в этом списке, которые не имеют FrameworkDirectory метаданных, обрабатываются так, как если бы они были заданы для уникального значения, переданногоделегата TargetFrameworkDirectories. |
LatestTargetFrameworkDirectories |
Необязательный параметр String[].Указывает список каталогов, которые содержат списки redist для новейшей платформы, которая может выступать в качестве целевой на компьютере. Если это не задано, используется самая высокая платформа, установленная на компьютере для заданного идентификатора целевой платформы. |
OutputUnresolvedAssemblyConflicts |
Необязательный параметр Boolean.Если принимает значение true, включает все неразрешенные конфликты сборки с диагностическим кодом MSB3277 в выходные данные UnresolveAssemblyConflicts. |
ProfileName |
Необязательный параметр String.Указывает имя целевого профиля платформы. Например, клиент, Интернет или сеть. Относится только к профилям .NET Framework. |
RelatedFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит связанные файлы, такие как XML и файлы с тем же базовым именем, что и pdb ссылка.Файлы, перечисленные в этом параметре, могут содержать следующие метаданные элемента: - Primary: значение Boolean . Если значение true, элемент файла был передан в массив с использованием параметра Assemblies . Значение по умолчанию: false.- CopyLocal: значение Boolean . Указывает, следует ли копировать указанную ссылку в выходной каталог. |
ResolvedDependencyFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит пути n-го порядка для зависимостей. Этот параметр не содержит первичных ссылок первого порядка, содержащихся в параметре ResolvedFiles .Элементы в этом параметре могут содержать следующие метаданные элемента: - CopyLocal: значение Boolean . Указывает, следует ли копировать указанную ссылку в выходной каталог.- FusionName: значение String . Указывает имя для этой зависимости.- ResolvedFrom: значение String . Указывает путь поиска литерала, из которого был разрешен этот файл. |
ResolvedFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит список всех первичных ссылок, разрешенных в полные пути. Элементы в этом параметре могут содержать следующие метаданные элемента: - CopyLocal: значение Boolean . Указывает, следует ли копировать указанную ссылку в выходной каталог.- FusionName: значение String . Указывает имя для этой зависимости.- ResolvedFrom: значение String . Указывает путь поиска литерала, из которого был разрешен этот файл. |
ResolvedSDKReferences |
Необязательный параметр ITaskItem[].Список ссылок на разрешенный пакет SDK, содержащий имя пакета SDK, расположение пакета SDK и целевую конфигурацию. Эти расположения выполняются только в том случае, если ссылка содержит SDKName к ней метаданные. |
SatelliteFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Указывает все найденные вспомогательные файлы. Эти файлы зависят от CopyLocal=true ссылки или зависимостей, которые привели к существованию CopyLocal=trueэтого элемента.Элементы в этом параметре могут содержать следующие метаданные элемента: - CopyLocal: значение Boolean . Указывает, следует ли копировать указанную ссылку в выходной каталог. Это значение равно true , если ссылка или зависимость, вызвавшая этот элемент, имеет значение CopyLocal , равное true.- DestinationSubDirectory: значение String . Указывает относительный конечный каталог, в который копируется этот элемент. |
ScatterFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит точечные файлы, связанные с одной из заданных сборок. Элементы в этом параметре могут содержать следующие метаданные элемента: - CopyLocal: значение Boolean . Указывает, следует ли копировать указанную ссылку в выходной каталог. |
SearchPaths |
Обязательный параметр String[] .Указывает каталоги или специальные расположения, в которых выполняется поиск на диске файлов, представляющих сборки. Порядок, в котором перечислены пути поиска, имеет значение. Для каждой сборки поиск по списку путей выполняется слева направо. Когда файл, представляющий сборку, найден, этот поиск останавливается, и начинается поиск для следующей сборки. Этот параметр принимает разделенный точками с запятой список значений, которые могут быть либо путями к каталогам, либо специальными литеральными значениями из следующего перечня: - {HintPathFromItem}: указывает задаче проверять HintPath метаданные базового элемента.- {CandidateAssemblyFiles}: указывает задаче проверять файлы, передаваемые через CandidateAssemblyFiles параметр.- {Registry:<AssemblyFoldersBase>, RuntimeVersion>, <<AssemblyFoldersSuffix>}: указывает задаче выполнять поиск в дополнительных папках, указанных в реестре. Для поиска в расположении реестра <AssemblyFoldersBase>, <RuntimeVersion> и <AssemblyFoldersSuffix> следует заменить на указанные значения. Спецификация по умолчанию для общих целевых — {Registry:$(FrameworkRegistryBase), $(TargetFrameworkVersion), $(AssemblyFoldersSuffix), $(AssemblyFoldersExConditions)}.- {AssemblyFolders}: указывает задаче использовать схему поиска сборок из реестра Visual Studio.NET 2003.- {GAC}: указывает задаче выполнять поиск в глобальном кэше сборок (GAC).- {RawFileName}: указывает, что задача будет рассматривать значение Include элемента в качестве точного пути и имени файла. |
SerializationAssemblyFiles |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит все найденные сборки сериализации XML. Эти элементы помечаются как CopyLocal=true, только если ссылка или зависимость, вызвавшая этот элемент, имеет значение CopyLocal=true. Свойство CopyLocal метаданных Boolean указывает, следует ли копировать указанную ссылку в выходной каталог. |
Silent |
Необязательный параметр Boolean.Если значение true, сообщения не регистрируются. Значение по умолчанию — false. |
StateFile |
Необязательный параметр String.Задает имя файла, указывающее, где следует сохранить промежуточное состояние сборки для этой задачи. |
SuggestedRedirects |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Содержит один элемент для каждого отдельного конфликтующего удостоверения сборки независимо от значения параметра AutoUnify . Сюда входят все язык и региональные параметры и PKT, которые не имели подходящей bindingRedirect записи в файле конфигурации приложения.Каждый элемент может содержать следующие сведения. - Include атрибут: содержит полное имя семейства сборок со значением поля "Версия" 0.0.0.0- MaxVersion : содержат максимальный номер версии. |
SupportsBindingRedirectGeneration |
Необязательный параметр Boolean.Задайте значение true в поддерживаемых проектах, чтобы создать автоматические перенаправления привязок (в настоящее время поддерживается только для проектов EXE). |
TargetedRuntimeVersion |
Необязательный параметр String.Указывает целевую версию среды выполнения, например 2.0.57027 или v2.0.57027. |
TargetFrameworkDirectories |
Необязательный параметр String[].Указывает путь каталога целевой платформы. Этот параметр необходим для определения CopyLocal состояния результирующего элемента.Если этот параметр не указан, результирующий элемент не будет иметь CopyLocal значения true , если они явно не имеют Private значения метаданных true в исходном элементе. |
TargetFrameworkMoniker |
Необязательный параметр String.Монитор TargetFrameworkMoniker , если таковой есть. Этот параметр используется для ведения журнала. |
TargetFrameworkMonikerDisplayName |
Необязательный параметр String.Отображаемое имя TargetFrameworkMoniker для отслеживания при его наличии. Этот параметр используется для ведения журнала. |
TargetFrameworkSubsets |
Необязательный параметр String[].Содержит список имен подсети целевой платформы для поиска в каталогах целевой платформы. |
TargetFrameworkVersion |
Необязательный параметр String.Версия целевой платформы проекта. Значение по умолчанию пусто, что означает отсутствие фильтрации ссылок на основе целевой платформы. |
TargetProcessorArchitecture |
Необязательный параметр String.Предпочитаемая архитектура целевого процессора. Используется для разрешения ссылок на глобальный кэш сборок (GAC). Этот параметр может иметь значение x86, IA64 или AMD64.Если этот параметр отсутствует, задача сначала учитывает сборки, соответствующие архитектуре выполняющегося процесса. Если не удалось найти сборку, задача учитывает сборки в глобальном кэше сборок, имеющие значение ProcessorArchitecture , равное MSIL , или не имеющие значение ProcessorArchitecture . |
UnresolvedAssemblyConflicts |
Необязательный выходной параметр ITaskItem[], доступный только для чтения.Если параметру OutputUnresolvedAssemblyConflicts задано значение true, этот параметр будет содержать список сведений о неразрешенных конфликтах, который обычно включается в выходные данные MSB3277. В противном случае он будет пустым. |
UnresolveFrameworkAssembliesFromHigherFrameworks |
Необязательный параметр Boolean.Если задано значение true, сборки платформ, версии которых выше или равны версии целевой платформы, будут принудительно принимать неразрешенное состояние. |
WarnOrErrorOnTargetArchitectureMismatch |
Необязательный параметр String.Если между целевой архитектурой процессора и архитектурой основной ссылки имеется несоответствие, то при этом Errorрегистрируется ошибка; если предупреждение регистрируется; при WarningNoneотсутствии ошибок или предупреждений. По умолчанию — Warning. |
Предупреждения
Регистрируются следующие предупреждения:
ResolveAssemblyReference.TurnOnAutoGenerateBindingRedirectsResolveAssemblyReference.SuggestedRedirectsResolveAssemblyReference.FoundConflictsResolveAssemblyReference.AssemblyFoldersExSearchLocationsResolveAssemblyReference.UnifiedPrimaryReferenceResolveAssemblyReference.PrimaryReferenceResolveAssemblyReference.UnifiedDependencyResolveAssemblyReference.UnificationByAutoUnifyResolveAssemblyReference.UnificationByAppConfigResolveAssemblyReference.UnificationByFrameworkRetarget
Замечания
Помимо перечисленных выше параметров, эта задача наследует параметры от класса TaskExtension, который, в свою очередь, наследует от класса Task. Список этих дополнительных параметров и их описания см. в статье Базовый класс TaskExtension.