|
Software
|
|
Escrito por Pablushka
|
|
Viernes 11 de Diciembre de 2009 17:47 |
|
C# es un lenguaje muy poderoso y las mejoras que se suceden con el tiempo lo hacen aún mucho más potente y robusto. Sin embargo a veces nos encontramos con errores que suelen ser bastante complicados de depurar. Este apareció cuando quise crear un objeto COM desde una dll hecha en c# que tiene una referencia a un webservice:
Type library exporter warning processing 'SmartSourceMicro.wsRemoteDeposit.RemoteDepositSoapClient, SmartSourceMicro'. Warning: Type library exporter encountered a type that derives from a generic class and is not markedas [ClassInterface(ClassInterfaceType.None)]. Class interfaces cannot be exposed for such types. Consider marking the type with [ClassInterface(ClassInterfaceType.None)] and exposing an explicit interface as the default interface to COM using the ComDefaultInterface attribute.
Bueno, como se imaginarán la depuración del error fue bastante engorrosa. Muchas cosas encontre en la web sobre este error pero ultimamente pareciera que los errores que me aparecen son demasiado específicos y poco frecuentes porque casi no encuentro solución. Es por ello que decidí publicar la solución de éste para que nadie sufra lo mismo que yo:
1. El error se debe a que en mi web service, utilizo métodos y propiedades de un tipo de datos que no se puede traducir a un objeto COM, como por ejemplo un List<>. Ahora bien, yo no quiero que los métodos del webservice sean parte del objeto COM, entoces...
2. El error se soluciona si al crear la referencia al webservice, le decimos que ésta no sea public sino internal, para ello, al crear la referencia al webservice, en el cuadro de diálogo que nos pide el server y el nombre, presionamos el botón Advanced y allí escogemos que el ámbito de la instancia de nuestro webservice sea Internal, de este modo los métodos y propiedades del webservice no se exportan al objeto COM y se usan, precisamente, internamente.
Listo. Así de fácil. Al compilar el proyecto desaparece el molesto warning.
|
|
Última actualización el Jueves 28 de Enero de 2010 17:48 |
|
Software
|
|
Escrito por Pablushka
|
|
Martes 26 de Mayo de 2009 18:00 |
|
No se si existe una herramienta para hacer esto dentro del SQL Server Managment Studio. Pero si no la hay, entonces este programita le va a venir bien a más de uno. Se trata simplemente de un programa al cual se le pasa un servidor, se seleccionan las bases de datos a ser tratadas y un query que se va a correr en todas las bases de datos seleccionadas.
|
|
Última actualización el Jueves 28 de Enero de 2010 17:49 |
|
Leer más...
|
|
Software
|
|
Escrito por Pablushka
|
|
Jueves 23 de Abril de 2009 18:17 |
|
Muchas veces es necesario encontrar un control dentro de una página asp.net que está anidado dentro de varios controles contenedores. Cuando esto sucede no es posbile recordar todo el path de controles anidados para poder hacer un simple FindControl, entonces es cuando este pequeño código nos viene de perillas.
|
|
Última actualización el Jueves 28 de Enero de 2010 17:49 |
|
Leer más...
|
|
Software
|
|
Escrito por Pablushka
|
|
Lunes 12 de Mayo de 2008 11:14 |
|
Cuando queremos incluir el namespace Microsoft.VisualBasic en nuestro proyecto de c# a veces nos encontramos con pequeños pero molestos problemas a la hora de compilar o ejecutar la aplicación.
|
|
Última actualización el Jueves 28 de Enero de 2010 17:50 |
|
Leer más...
|