2013-05-13 9 views
6

Come documentato in diverse domande (Alternative for the Registering ASP.NET 4.5 on Windows Server 2012; Server 2012 IIS 8 MVC app shows default IIS home page or 403/404 errors; WCF on IIS8; *.svc handler mapping doesn't work), su servizio di Windows 2012 il comando aspnet_regiis -ir non funziona più, e invece produce il seguente output:Qual è l'equivalente da riga di comando di Windows Server 2012 di "aspnet_regiis -ir`?

This option is not supported on this version of the operating system. Administrators should instead install/uninstall ASP.NET 4.5 with IIS8 using the "Turn Windows Features On/Off" dialog, the Server Manager management tool, or the dism.exe command line tool. For more details please see http://go.microsoft.com/fwlink/?LinkID=216771 .

Nel nostro caso, vogliamo solo a correre questo comando per registrare nuovamente ASP.NET 4.5, poiché un'altra installazione non è stata registrata: ASP.NET 4.5 è già installato.

Utilizzando l'interfaccia utente (Aggiungi/Rimuovi ruoli/funzionalità), ispirato ai post di riferimento, ho scoperto che è sufficiente rimuovere la funzionalità di attivazione HTTP di WCF e quindi aggiungerla di nuovo. (Ma avevo bisogno di disinstallare/reinstallare una funzionalità che dipende dipendere dall'attivazione HTTP WCF ...)

Domanda: Come può essere eseguita la stessa cosa tramite la riga di comando su Windows Server 2012?

(Ho guardato questo dism.exe cosa, ma sembra scoraggiante, e dism.exe -? non mi ha aiutato affatto.)

Grazie!

risposta

0

È necessario utilizzare la dashboard di Server Manager per aggiungere/rimuovere ruoli/funzionalità. Cercare IIS -> WebServer -> Application Development -> ASP.NET 4.5

+1

in realtà non è la domanda ... –

+1

Egli ha detto che egli è in grado di farlo già. Sta chiedendo un'alternativa da riga di comando all'utilizzo di Aspnet-regiis. Questa risposta è irrilevante! –

4

Dism sarebbe il modo migliore per farlo:

Dism /online /Disable-Feature /FeatureName:WCF-HTTP-Activation45 
Dism /online /Enable-Feature /FeatureName:WCF-HTTP-Activation45 

Utilizzare il/all interruttore quando permette di abilitare tutte le funzionalità genitore.

1

Questo errore sembra verificarsi quando si installa la funzione di base di .NET framework che è .NET 3.5 su CLR 2.0, inclusa l'attivazione HTTP su un server Windows 2012 o 2012 R2 su cui è già installata la versione .NET Framework 4.5.

Nel nostro caso le correzioni suggerite non hanno funzionato.

Abbiamo avuto un sito web CLR 4.0 che stava mostrando l'errore:

Could not load type 'System.ServiceModel.Activation.HttpModule' from assembly 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 

Rimozione e ri-aggiungendo le funzionalità ASP.NET 4.5 fatto alcuna differenza.

abbiamo dovuto togliere e aggiungere nuovamente le caratteristiche di 3,5 utilizzando DISM:

Dism /online /Disable-Feature /FeatureName:WCF-HTTP-Activation 
Dism /online /Enable-Feature /FeatureName:WCF-HTTP-Activation 

Si potrebbe anche usare PowerShell:

Remove-WindowsFeature -Name NET-HTTP-Activation 
Add-WindowsFeature -Name NET-HTTP-Activation 
Problemi correlati