Como determinar a versão atual do ASP.NET MVC?

87

Existe uma maneira de obter a versão atual da ASP.NET MVC no código? É necessário refletir sobre as montagens MVC? Alguma nova variável de servidor IIS? Alguma propriedade para ler no contexto HTTP?

rasx
fonte
Por 'legal' você quer dizer 'eficiente' ou 'complicado?'
JYelton
Possível duplicata de Qual versão do MVC estou usando?
WoIIe

Respostas:

44

Via Reflexo:

typeof (Controller).Assembly.GetName().Version
John Farrell
fonte
muito agradável! Eu verifiquei MvcHandler.GetMvcVersionString () no código-fonte mvc (mas método privado, arrependimento ..).
takepara
Também pode verificar o nome para confirmar se é de fato um aplicativo mvc: typeof (Controller) .Assembly.GetName (). Name, ou ambos ao mesmo tempo: typeof (Controller) .Assembly.GetName (). FullName.
Andrew
172
  1. Vá para a pasta de referências
  2. Olhe para System.Web.Mvc
  3. Clique com o botão direito
  4. Clique em Propriedades
  5. Observe a propriedade Versão.

Esta é provavelmente a sua versão, mas o GAC pode desempenhar um papel em bagunçar você.

David
fonte
tente adicioná-lo novamente, mas faça um backup
David
19

Abra o packages.config em seu explorador de soluções.

Em seguida, procure o ID do pacote ASP.NET MVC, como segue:

id = "Microsoft.AspNet.Mvc" version = "5.2.2" targetFramework = "net452"

meol
fonte
7

Em tempo de execução-

string mvcVersion = typeof (Controller).Assembly.GetName().Version.ToString();

Em tempo de design-

  • Vá para a sua pasta de referência
  • procure por system.web.mvc
  • Clique com o botão direito
  • Clique em Propriedades Veja a propriedade Versão

.

Umang Patwa
fonte
Não entendi a princípio na Create new projectjanela acima os modelos de asp foram escritos 4.6, mas meu assembly de referência MVC é a versão 5: |
AmiNadimi
4
O que exatamente esta resposta adiciona ao tópico? Você acabou de copiar outras respostas.
kocica
1

Na chance de você não ter acesso ao código e / ou desejar determinar a versão do ASP.NET que foi implantada em uma máquina, você pode fazer o seguinte (no TechNet ):

Como posso determinar qual versão do ASP.NET MVC está instalada em meu sistema?

Para MVC 4.0, MVC 5.0 ou MVC 5.1, você deve ter implantado o binário afetado (System.Web.MVC.dll) com seu aplicativo. Verifique a pasta bin do seu aplicativo para a versão do binário. Para MVC 2.0, MVC 3.0 ou MVC 4.0, consulte o item Adicionar ou Remover Programas do painel de controle para a versão do MVC instalada.

Schellack
fonte
0

Você também pode verificar a versão do Microsoft.AspNet.Mvc pacote nuget instalado em seu projeto.

Você pode usar o Console do gerenciador de pacotes:

Get-Package Microsoft.AspNet.Mvc
Alexan
fonte
-2

Use o pacote NuGet MvcDiagnostics que você pode instalar. Crie um MVC "hello world" ou algum outro programa básico e instale este pacote. A instalação solicitará que o projeto adicione um arquivo. Confirme e você deve ver MvcDiagnostics.aspx adicionado ao seu projeto. Clique com o botão direito neste arquivo no visualizador de solução e escolha "Exibir no navegador". Você deverá ver uma bela página com todas as informações de montagem. O meu se parece com o seguinte:

Microsoft ASP.NET MVC Diagnostics Information

This page is designed to help diagnose common errors related to mismatched or conflicting ASP.NET MVC binaries. If a known issue is identified, it will be displayed below in red text.

For questions or problems with ASP.NET MVC or this utility, please visit the ASP.NET MVC forums at http://forums.asp.net/1146.aspx.

Environment Information

Operating system: Microsoft Windows NT 6.2.9200.0
.NET Framework version: 4.0.30319.34209 (32-bit)
Web server: Microsoft-IIS/8.0
Integrated pipeline: True
Worker process: iisexpress.exe
AppDomain: Homogenous = True, FullTrust = True

ASP.NET MVC Assembly Information (System.Web.Mvc.dll)

Assembly version: ASP.NET MVC 4 RTM (4.0.20710.0)
Full name: System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Code base: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.Mvc/v4.0_4.0.0.0__31bf3856ad364e35/System.Web.Mvc.dll
Deployment: GAC-deployed

ASP.NET MVC Futures Assembly Information (Microsoft.Web.Mvc.dll)

An ASP.NET MVC Futures assembly has not been loaded into this application. A download for this version of ASP.NET MVC Futures is not available. Pre-release versions of the MVC Futures assembly are no longer available once that version of ASP.NET MVC has gone RTM.

All Loaded Assemblies

71 assemblies are loaded.

A_65e81fd0_eb37_47d8_aba0_baece822c7ad, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
Antlr3.Runtime, Version=3.3.1.7705, Culture=neutral, PublicKeyToken=31bf3856ad364e35
App_global.asax.1h_47vyd, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
App_Web_rnug5pva, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
BasicAuthentication, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Microsoft.Build.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.Build.Utilities.v4.0, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.JScript, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.VisualBasic.Activities.Compiler, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.VisualStudio.Web.PageInspector.Loader, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.VisualStudio.Web.PageInspector.Runtime, Version=12.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.VisualStudio.Web.PageInspector.Tracing, Version=12.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
SMDiagnostics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data.DataSetExtensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data.Services.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Data.SqlXml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Runtime.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Runtime.DurableInstancing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Runtime.Serialization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.ServiceModel.Activation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.ServiceModel.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.ServiceModel.Internals, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Transactions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Web.ApplicationServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Mobile, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Optimization, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.RegularExpressions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.WebPages.Deployment, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Workflow.Activities, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Workflow.ComponentModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Workflow.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.WorkflowServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Xaml.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
WebGrease, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Sultan A
fonte