Почему моя функция не соответствует CLS?

Я получаю следующее предупреждающее сообщение...

Тип возвращаемой функции "ConnectionNew" не соответствует CLS.

... для этой функции:

Public Function ConnectionNew(ByVal DataBaseName As String) As MySqlConnection
      Dim connection As MySqlConnection = Nothing
      connection = getConnection(DataBaseName())
      Return connection
End Function

Что означает это сообщение и как его исправить?

Ответ 1

Это потому, что вы возвращаете объект типа, который не соответствует CLS. Вы ничего не можете с этим поделать, вы не пишете этот тип. Просто признайте, что вы знаете, что он несовместим, иначе он не вызовет каких-либо проблем. Если вы не используете эту функцию на другом языке, который не поддерживает все типы .NET. Fix:

<CLSCompliant(False)> _
Public Function ConnectionNew(ByVal DataBaseName As String) As MySqlConnection
   '' etc...
End Function