Abbiamo due progetti che sono entrambi librerie di classi. Project 1 è un progetto VS 2008 e si rivolge a .NET Framework 3.5. Project 2 è un progetto VS 2010 (release candidate) destinato a .NET Framework 4.0. Quando si tenta di aggiungere un riferimento a Project 2 in Project 1, non riesce con un messaggio di errore meno che informativo. So che se cambio il Framework di destinazione per Project 2 a 3.5, allora l'aggiunta del riferimento funzionerà. La mia domanda è: se non cambio i framework di destinazione, ma converto il Progetto 1 in VS 2010, il lavoro di referenziazione funzionerà? Detto in altro modo, esiste qualche incompatibilità intrinseca tra le librerie di classi che hanno come target diverse versioni di framework, oppure non funziona perché VS 2008 non conosce il framework 4.0?Perché l'aggiunta di un riferimento al progetto con targeting per .NET Framework 4.0 non riesce?
risposta
Sì, è un problema. Proprio come non è possibile aggiungere un riferimento a un assembly .NET 2.0 da un progetto .NET 1.0 o 1.1. .NET 4.0 è una nuova versione di runtime del framework (CLR). Le versioni .NET 3.5 e 3.0 utilizzano entrambe la versione 2.0 runtime del framework (CLR).
È sempre possibile aggiungere un riferimento da un assieme creato con un runtime più recente a un assieme con un runtime precedente, ma non viceversa.
Da NET 2.0 (3.0 e 3.5):
* possibile fare riferimento a .NET 2.0 (3.0 e 3.5) gruppi
* non può fare riferimento .NET 4.0 assemblee
Da NET 4.0:
* Può fare riferimento a .NET 4.0 assembly
* Può fare riferimento a .NET 2.0 (3.0 e 3.5) assiemi
Versione di framework 2, 3.0, 3.5 eseguita su CLR versione 2, mentre la versione di framework 4 gira su CLR versione 4: la versione 2 CLR non caricare un assembly che afferma che richiede CL R 4, quindi Visual Studio sta provando (male, sembra) per dirti questo. Quindi, per rispondere alla tua domanda, sì, se aggiorni il tuo progetto 1 a VS 2010 e cambi il framework di destinazione alla versione 4, (lo fa per impostazione predefinita per i progetti C++, ma non C#/VB.NET), sarà in grado per fare riferimento al progetto 2.
Se si desidera utilizzare l'assembly finalizzato a .net framework 4 dall'assembly finalizzato a .net framework 3.5, è possibile esportare assembly (.net framework 4) tramite COM e importarlo in assembly .net framework 3.5 .
Ci scusiamo per il mio scarso inglese.
- 1. Riferimento a .net framework 4.5.1 assembly in un progetto 4.0
- 2. Perché la versione di System.dll è 2.x nel mio progetto .net targeting .net framework 3.5?
- 3. Targeting di .NET Framework 4.5 tramite Visual Studio 2010
- 4. Perché non è possibile che un progetto .net 4.0 faccia riferimento a un assembly 4.5?
- 5. .Net 4.0 System.Web.Security.MembershipProvider riferimento ambiguo?
- 6. Perché Windows Server 2012 non supporta .NET Framework 4.0?
- 7. Aggiornamento di un progetto .Net 2.0 a .Net 4.0
- 8. SMO in .Net Framework 4.0
- 9. log4net con .NET 4.0
- 10. Libreria EXIF per .NET 4.0 framework
- 11. posso utilizzare .NET Framework 4.0 con VS2008?
- 12. Aggiungere .Net Framework 4.0 nel progetto di installazione
- 13. Come faccio a fare riferimento a un progetto .NET Framework in un progetto .NET Core?
- 14. Fondazione Sharepoint 2010 con .Net Framework 4.0
- 15. Perché System.Data.OracleClient non è disponibile nel profilo client .NET 4.0?
- 16. Mono per Android Il progetto non funziona con le librerie destinate a .NET framework 4
- 17. Supporto NHibernate .NET 4.0 framework?
- 18. Il progetto non fa riferimento al framework ".NETFramework, Version = v4.5".
- 19. Codice personalizzato di SSRS 2012 .NET Framework 4.0 non supportato
- 20. Managed DirectX in esecuzione dall'app .Net Framework 4.0 non cercare
- 21. Errore di Visual Studio 2010: "Project Target Framework non installato" durante l'apertura di un progetto .NET 4.0
- 22. Compile .net progetto 4.0 sul server di build con .net 4.5
- 23. Installa dll .NET 4.0 al GAC
- 24. .NET 4.0 Timeout del framework Entity scaduto
- 25. Componenti in fase di progettazione System.Data.SQLite nel targeting VS2012 .NET 4.0
- 26. Installazione di .NET Framework 4.0, cambio unità
- 27. Tipo varianza in .NET Framework 4.0
- 28. Posso utilizzare tutte le funzionalità di C# 4.0 in un progetto destinato a .Net 3.5?
- 29. WPF lento per l'avvio su x64 in .NET Framework 4.0
- 30. .Net Framework 4.0 - Opcodes.Box presenti nel dizionario con int chiave
Il tuo inglese è completamente comprensibile. Niente di cui scusarti. Complimenti! :) –