Una de las diferencias más convincentes para mí es que C# generalmente tiene una sintaxis más concisa. Esto se manifiesta especialmente con expresiones lambda. Aunque VB.Net ahora tiene la misma funcionalidad, la sintaxis de VB.Net es demasiado detallada.
Por ejemplo, si se utiliza el LINQ 'API Fluido' sintaxis:
C#
var addresses = _users
.Where(u => u.Name == "scott")
.Select(u => u.Address)
Es cierto que la sintaxis puede ser un poco raro al principio, pero tan pronto como usted está acostumbrado a esto realmente se vuelve muy legible. Compare esto con VB.Net:
Dim addresses = _users _
.Where(Function(u) As Boolean
return u.Name = "scott"
End Function) _
.Select(Function(u) as Address
Return u.Address
End Function)
EDIT: Al parecer, estaba mal informado ...
El código anterior sólo es válido en VB10 (donde se añaden las declaraciones de varias líneas lambda), pero se puede escribir más concisa de la siguiente manera:
Dim addresses = users _
.Where(Function(u) u.Name = "scott") _
.Select(Function(u) u.Address)
Aparte de los guiones feas y la Function
palabra clave en lugar de la =>
, esto es su mayoría los mismos. Todavía prefiero la sintaxis de C# ;-)
Manténganse al tanto con la jerga de marketing, no es .0 ya es solo 4;) – Nate
¡Mis disculpas por una supervisión tan ofensiva! ; D – Airn5475
Es posible que desee aceptar una respuesta con la que se sienta cómodo. Ayuda a las personas a darse cuenta de que su problema está resuelto. – JonH