2009-07-20 29 views
6

Estoy más familiarizado con VB y el libro que compré tiene ejemplos de C#, ahora estoy atascado.Clase/método abstracto, cómo C# -> VB.NET

¿Cómo implemento lo siguiente en VB.NET?

public abstract class ENTBaseDATA<T> where T : IENTBaseEntity 

{ 
    public abstract List<T> Select(); 
    public abstract T Select(int id); 

    etc....This code already is converted :) 

} 

Para código completo ver Capítulo 2 descarga:

http://www.wrox.com/WileyCDA/WroxTitle/productCd-0470396865,descCd-DOWNLOAD.html

Respuesta

13

Usted podría tratar de usar un C#/VB.NET converter. Salida:

Public MustInherit Class ENTBaseDATA(Of T As IENTBaseEntity) 
    Public MustOverride Function [Select]() As List(Of T) 
    Public MustOverride Function [Select](ByVal id As Integer) As T 
    ' and then the other code ' 
End Class 
+0

Thx intenté pero dio un error. Su respuesta parece funcionar thx –

+1

MustInherit y MustOverride son las Palabras Mágicas aquí - Visual Basic utiliza dos palabras diferentes para Clases y Miembros para hacer que el uso sea más obvio. –

+1

@Michael: sí, en este caso parece que la sintaxis de VB.NET es más imperativa, mientras que la sintaxis de C# es más descriptiva. 'MustInherit' y' MustOverride' se pueden poner en la lista TODO del desarrollador, mientras que 'abstract' se refiere más a las características de los miembros. –

0

Puede verificar algunos auto convertidores, fe. http://www.kamalpatel.net/ConvertCSharp2VB.aspx. Si no funciona, puede: crear un ensamblaje en C# (simplemente compilar su código), descargar .NET Reflector (¡si no tiene uno! :)), descompilar el ensamblaje y convertirlo a VB.NET

// Editar código eliminado, ya que parece estar roto (eh, esos convertidores;)).

12

Usted debe saber:

Resumen Clase:

En C#: abstract palabra clave

En VB.NET: MustInherit palabra clave

Resumen Método:

En C#: abstract palabra clave

En VB.NET: MustOverride palabra clave

clase genérica o método:

En C#: Class<T> where T : Conditions

En VB.NET: Class(Of T As Conditions)

Por último, en VB .NET la palabra Select es una palabra clave reservada, por lo que debe encerrarla entre [] para poder usarla.