Есть ли инструмент для проверки соответствия CLS?

Есть ли инструмент, который может анализировать мой код.NET (C# и VB.NET) и сказать мне, почему вещи не совместимы с CLS?

Visual Studio рада сообщить мне, что параметр не совместим с CLS, но это не приближает меня к решению проблемы, поскольку я не знаю причину.

Пример ошибки Visual Studio:

Параметр xyz не соответствует CLS

3 ответа

Решение

Я не могу сказать, что знаю инструмент, и я склонен использовать страницу MSDN Независимость от языка и Компоненты, не зависящие от языка, чтобы проверить, является ли тип параметра / переменной совместимым с CLS. Смотрите раздел таблицы под названием "Типы".

Некоторое время назад в блоге FxCop и CLS Compliance также обсуждались некоторые вопросы.

По памяти это не так уж сложно сделать. Я не знаю об инструменте, но эта страница описывает, что вам нужно изменить.

Большие используют специфические для типа структуры (думайте uint32 вместо uint) и используйте "_" в ваших открытых членах.

Упреждающее опровержение: насколько мне известно, FxCop не поддерживает проверки соответствия CLS. Возможно, анализ кода в VS делает, но я не могу проверить на работе.

Вы можете просто погуглить полученное предупреждение.

Другие вопросы по тегам