Consideriamo che abbiamo un'app a 3 livelli e abbiamo tre progetti denominati P1, P2, P3.Le dipendenze di riferimento C# sono diverse da VB?
Dipendenza: P1 (dati) < < P2 (Business Logic) < < P3 (Presentazione)
P2 ha una classe base X che è stato ereditato in un altra classe Y in P2 . Quindi, aggiungiamo il riferimento P1 a P2. Tuttavia, P3 utilizza P2. Y e non utilizza P1. X direttamente.
Per fare ciò dobbiamo aggiungere il riferimento P2 a P3. Ma c'è una differenza tra VB e C#.
In VB, aggiungiamo il riferimento P2 solo a P3. P2 usa P1 ma non importa per P3. Noi non è necessario aggiungere il riferimento P1 a P3. È abbastanza!
Ma, in C#, dobbiamo aggiungere rif P1 e P2 sia per P3 anche se la P3 non usa P1.x. Se non si aggiunge il riferimento da A a C, viene visualizzato l'errore seguente:
Il tipo "P1.X" è definito in un assieme non referenziato. È necessario aggiungere un riferimento all'assembly 'P1, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null'.
Perché dobbiamo aggiungere due progetti in C#?
Oppure, invece di questo, possiamo bloccare questo comportamento?
Questo spiega la distinzione VB.NET/C#? –
@Kirk, no non ... –
Sì, come hai detto che dobbiamo aggiungere P1 ref a P3 in C#. Ma non dobbiamo aggiungerlo in VB. Questa è la domanda che ho posto ... –