Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
| Ценность | |
|---|---|
| Идентификатор правила | IL3002 |
| Категория | Файл SingleFile |
| Исправление является разрушающим или неразрушающим | Неразрывный |
Причина
При публикации приложения в виде одного файла (например, путем задания свойства PublishSingleFile значением true в проекте), вызов элементов, аннотированных атрибутом RequiresAssemblyFilesAttribute, не совместим с одним файлом. Эти вызовы несовместимы, так как элементы, аннотированные с этим атрибутом, требуют, чтобы файлы сборок были на диске, а сборки, внедренные в однофайловое приложение, загружаются в память.
Пример:
[RequiresAssemblyFiles(Message="Use 'MethodFriendlyToSingleFile' instead", Url="http://help/assemblyfiles")]
void MethodWithAssemblyFilesUsage()
{
}
void TestMethod()
{
// IL3002: Using member 'MethodWithAssemblyFilesUsage' which has 'RequiresAssemblyFilesAttribute'
// can break functionality when embedded in a single-file app. Use 'MethodFriendlyToSingleFile' instead. http://help/assemblyfiles
MethodWithAssemblyFilesUsage();
}
Устранение нарушений
Члены, аннотированные с атрибутом "RequiresAssemblyFilesAttribute", имеют сообщение, предназначенное для предоставления полезной информации пользователям, публикующим в виде одного файла. Рассмотрите возможность адаптации существующего кода к сообщению атрибута или удаления вызывающего нарушение вызова.
Когда следует подавлять предупреждения
При адаптации существующего кода к рекомендации, описанной в сообщении атрибута "RequiresAssemblyFilesAttribute", необходимо отключить предупреждение.