Domanda

Questo dovrebbe andare bene visto che il CLR non ha effettivamente cambiato?

Le caselle in esecuzione di C# 2.0 codice sono aveva .NET 3.5 srotolato.

Lo sfondo è che abbiamo un servizio di windows (.NET 2.0 exe costruito con VS2005, distribuito ~150 server) che carica dinamicamente assemblee (quasi come i plugin) per completare i vari elementi di lavoro richiesto.Ogni volta che il lancio di una nuova versione della logica di bus, abbiamo appena goccia assemblee su un server FTP e il servizio di windows che sa come controllare per, catturare e memorizzare le ultime versioni.Nuovo assembly sono ora costruiti utilizzando VS2008 e rivolte .NET 2.0, sappiamo che funziona bene.Tuttavia ci piacerebbe iniziare a prendere vantaggio di linguaggio C# 3.0 caratteristiche come LINQ e pensati per le assemblee contro .NET 3.5, senza dover creare e distribuire una nuova versione del servizio di windows.

È stato utile?

Soluzione

C#3 e .Net 3.5 aggiunge nuove assemblee, ma il è invariato.

Questo significa che con .Net 2 assiemi è possibile compilare e utilizzare C#3, purché non utilizzare Linq o qualsiasi altra cosa che i riferimenti di Sistema.Linq o di Sistema.Core

yield, var, lambda sintassi, anon tipi e initialisers sono tutti compilatore bravura.Il che producono è cross-compatibile.

Se si può fare riferimento alla nuova assemblee per 3.5 dovrebbe tutto funzionare.

Non esiste una nuova versione di ASP.Net - dovrebbe essere ancora 2.0.50727 - ma si deve comunque compilare per la 3.5

Altri suggerimenti

resa, var, lambda sintassi, anon tipi e initialisers sono tutti compilatore bravura.Il che producono è cross-compatibile.

Minori nit-picking punto, ma la resa era un 2.0 caratteristica comunque.

Questa è roba interessante.Stavo guardando LinqBridge ieri, dopo aver qualcuno su questo forum ha suggerito a me e che stanno facendo una cosa simile.

Trovo strano che la Microsoft ha nominato il framework 2.0, 3.0 e 3.5, quando tutti compilazione giù per produrre IL necessario dal 2.0 CLR.Avrei pensato di aggiungere le versioni su 2.0 avrebbe avuto più senso sebbene suppongo che anche è difficile convincere la gente a ottenere la testa intorno al fatto che ci sono diverse versioni di runtime, compilatori e linguaggi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top