Considere que tenemos aplicaciones de 3 niveles y tenemos tres proyectos llamados P1, P2, P3.¿Las dependencias de referencia C# son diferentes a VB?
Dependencia: P1 (Datos) < < P2 (lógica de negocios) < < P3 (Presentación)
P2 tiene una clase base X que se hereda de otra clase Y en P2 . Entonces, agregamos el ref P1 a P2. Sin embargo, P3 usa P2. Y y no usa P1. X directamente.
Para hacer esto, tenemos que agregar ref P2 a P3. Pero hay una diferencia de entre VB y C#.
En VB, agregamos ref P2 solo a P3. P2 usa P1 pero no importa para P3. Nosotros no es necesario agregar ref P1 a P3. ¡Esto es suficiente!
Pero, en C#, hay que añadir ref P1 y P2 a P3 tanto incluso si el P3 no utiliza P1.X. Si no agrega ref A a C, obtendrá el siguiente error:
El tipo 'P1.X' se define en un conjunto al que no se hace referencia. Debe agregar una referencia al ensamblado 'P1, Versión = 1.0.0.0, Cultura = neutral, PublicKeyToken = null'.
¿Por qué debemos agregar dos proyectos en C#?
O, en lugar de esto, ¿podemos bloquear este comportamiento?
¿Esto explica la distinción VB.NET/C#? –
@Kirk, no, no ... –
Sí, como dijiste, tenemos que agregar P1 ref a P3 en C#. Pero no tenemos que agregarlo en VB. Esta es la pregunta que hice ... –