2012-06-15 8 views
8

Stiamo utilizzando Teamcity per realizzare build di integrazione continua per il nostro sito Web e abbiamo appena aggiornato il nostro sito Web a .Net 4.5RC. L'applicazione si sviluppa e viene eseguita in IIS express sulla mia scatola e si basa sul nostro build server su cui ho installato .NEt 4.5RC. Ma quando lo distribuiamo sul server su cui è installato .Net 4.5RC, otteniamo il seguente errore.Distribuzione di un sito Web .Net 4.5 su un server IIS 7.5

Il pool di applicazioni che si sta tentando di utilizzare ha la proprietà 'managedRuntimeVersion' impostata su 'v4.0'. Questa applicazione richiede 'v4.5'.

Cosa posso fare per risolvere questo problema. Ho provato a impostare il pool di applicazioni sul server a 4.5, ma non è possibile. Vedi this SO post.

+0

Amico, devi 1) aggiornare .Net sul tuo server IIS, e/o 2) indirizzare la tua build per una versione inferiore di .Net (4.0 o, meglio ancora, 3.5 se potresti aver bisogno di eseguire altrove). PS: .Net 4.5 è abbastanza sanguinante (ho appena fatto un aggiornamento ad esso ieri, per alcune pre-release di Windows 8). Sei * sicuro * che hai bisogno di 4.5 ??? – paulsm4

+2

Ho già installato. NET 4.5RC sul server. Da qui l'affermazione '... al server su cui è stato installato .Net 4.5RC otteniamo il seguente errore'. Lo stiamo testando sul nostro server di sviluppo per un'app imminente che verrà rilasciata dopo che 4.5 passa a RTM. – PlTaylor

+0

Quale versione di runtime .net è impostata su AppPool? –

risposta

4

Si scopre che si tratta di un problema di TeamCity. Quando eseguiamo l'aggiornamento direttamente al sito da Visual Studio 2012 RC, funziona correttamente. Abbiamo dovuto modificare il build runner in TeamCity su un conduttore di riga di comando che chiama WebDeploy 3.0 di VS 2012.

+1

@PITaylor, ho lo stesso problema con TeamCity. Puoi per favore precisare come hai risolto questo? –

+0

Al momento non ho accesso al server, ma fondamentalmente abbiamo modificato il build runner dal .net build runner in un cmd line build runner e abbiamo eseguito msbuild dalla casella di build in quel modo dopo che abbiamo installato vs 2012 nella casella di compilazione . – PlTaylor

0

OK - abbastanza giusto. È necessario utilizzare IIS 7.5, è necessario target. Net 4.5 ... e sono dovrebbe essere reciprocamente compatibili.

Dai un'occhiata a questo link; cercare "Aspnet_regiis.exe":

http://msdn.microsoft.com/en-us/library/ee942158.aspx

'Speranza che aiuta .. PSM

PS:

Questi link possono (o non può) essere anche utile:

Si prega di inviare di nuovo quello che si trova.

+1

Ho registrato nuovamente aspnet_regiis.exe dalla directory .net4.0 poiché non esiste una directory 4.5. E ancora non sembra voler installare sul server. – PlTaylor

+0

Questi collegamenti sembrano tutti fare riferimento a .Net 4.0 e non sembrano risolvere il mio problema. – PlTaylor

+0

.net 4.5 è l'estensione per 4.0, dovrebbe funzionare. –

14

Ho avuto un problema simile. Stavo costruendo la mia applicazione chiamando MSBuild, e ho scoperto che quando ho provato a distribuire sul Web l'applicazione ho ricevuto quell'errore. ho riparato dicendo MSBuild a costruire con VS2012, con l'aggiunta di un interruttore di comando per il comando MSBuild:

/P:VisualStudioVersion=11.0 

Tip o' il cappello per this question.

+0

Aggiungendo questo interruttore risolto il mio poblem –

+0

Risolto per me :) –

1

stavo affrontando lo stesso problema anche dopo aver utilizzato /P:VisualStudioVersion=11.0 così come ignorare versione managedruntime nel proj file.

eseguire il comando

C:\Windows\System32\inetsrv>appcmd set apppool /apppool.name: DefaultAppPool /managedRuntimeVersion:v4.5 

Dopo questo, reimpostare l'ISS.

Problemi correlati