Tipo de miembro no es compatible con CLS
-
27-09-2019 - |
Pregunta
El uso de Visual Studio 2008 y VB.Net:
Tengo una aplicación web de trabajo que utiliza un servicio web ASMX que se compila en su montaje por separado. Tengo otro proyecto de biblioteca de clases compilado como un conjunto separado que sirve como un proxy para este servicio web. Todo esto parece que funciona en tiempo de ejecución, pero estoy recibiendo esta advertencia en tiempo de compilación, que no entiendo y me gustaría solución:
Tipo de 'wsZipeee' miembro no es compatible con CLS
Tengo docenas de formularios web en el proyecto principal que la referencia a la clase proxy con ninguna queja de tiempo de compilación como este fragmento de código:
Imports System.Data
Partial Class frmZipeee
Inherits System.Web.UI.Page
Public wsZipeee As New ProxyZipeeeService.WSZipeee.Zipeee
Dim dsStandardMsg As DataSet
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Y, sin embargo tengo un formulario web (también en la raíz del proyecto principal), que me da el mensaje "no compatible con CLS", pero todavía intenta hacer referencia a la clase de proxy al igual que los otros archivos ASPX. Me da la advertencia de tiempo de compilación en la línea anotada por mí con 'ERROR aquí ..
Imports System.Data
Partial Class frmHome
Inherits System.Web.UI.Page
Public wsZipeee As New ProxyZipeeeService.WSZipeee.Zipeee ERROR here
Dim dsStandardMsg As DataSet
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
Esto no tiene sentido para mí. El archivo con la advertencia se llama frmHome.aspx.vb; todos los demás en el proyecto de declarar las cosas de la misma manera y no tienen ninguna advertencia. Por cierto, el servicio web mismo vuelve tipos de datos estándar:. Entero, cadena, y el conjunto de datos
Solución
Me remontar este problema a la directiva <% @ Page declarativa del archivo "problema" usando Codebehind
mientras que el otro archivo (s) utiliza el atributo CodeFile
. Cuando lo cambié, que provocó algunos problemas nuevos pero los resolvió ya su vez la queja original sobre nonCLScompliance fue.