Поделиться через


Правила переносимости и взаимодействия

Правила переносимости поддерживают переносимость на разных платформах. Правила взаимодействия поддерживают взаимодействие с COM-клиентами.

В этом разделе

Правило Описание
CA1401: P/Invokes не должно отображаться Общедоступный или защищенный метод в общедоступном типе имеет атрибут System.Runtime.InteropServices.DllImportAttribute (также реализован ключевым словом Declare в Visual Basic). Такие методы не должны быть разглашены.
CA1416: Проверьте совместимость платформы Использование API, зависящих от платформы, в компоненте делает код недоступным для работы на всех платформах.
CA1417: не используйте OutAttribute для строковых параметров в P/Invokes Строковые параметры, передаваемые по значению с помощью OutAttribute, могут дестабилизировать среду выполнения, если строка является интернированной строкой.
CA1418: использование допустимой строки платформы Анализатор совместимости платформы требует допустимого имени и версии платформы.
CA1419: Предоставьте конструктор без параметров, который имеет такую же видимость, как и содержащий его тип, для конкретных типов, производных от System.Runtime.InteropServices.SafeHandle Предоставление конструктора без параметров, который имеет такую же видимость, как и содержащий его тип, для типа, производного от System.Runtime.InteropServices.SafeHandle, обеспечивает более высокую производительность и удобство использования с решениями взаимодействия, генерируемыми исходным кодом.
CA1420: свойство, тип или атрибут требуют маршаллинга среды выполнения Если использовать возможности, требующие маршалинга среды выполнения, когда маршалинг среды выполнения отключен, это приведет к исключениям во время выполнения.
CA1421: Метод использует маршаллинг среды выполнения при применении атрибута DisableRuntimeMarshallingAttribute Метод использует маршаллирование среды выполнения, которое в то же время явно отключено.
CA1422: проверка совместимости платформы Не рекомендуется вызывать API, устаревший в данной ОС (версии) с сайта вызова, доступного из этой ОС (версии).