Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何确定ASP.NET MVC的当前版本?_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 如何确定ASP.NET MVC的当前版本?

Asp.net mvc 如何确定ASP.NET MVC的当前版本?,asp.net-mvc,Asp.net Mvc,有没有办法在代码中获取当前版本的ASP.NET MVC?是否需要反思MVC组件?有新的IIS服务器变量吗?要在HTTP上下文中读取的某些属性?通过反射: typeof (Controller).Assembly.GetName().Version 转到“参考资料”文件夹 查找System.Web.Mvc 右键点击它 单击属性 查看Version属性 这很可能是您的版本,但GAC可能会让您感到困惑。如果您无法访问代码和/或想要确定已部署在计算机上的ASP.NET版本,您可以执行以下操作(从):

有没有办法在代码中获取当前版本的ASP.NET MVC?是否需要反思MVC组件?有新的IIS服务器变量吗?要在HTTP上下文中读取的某些属性?

通过反射:

typeof (Controller).Assembly.GetName().Version
  • 转到“参考资料”文件夹
  • 查找
    System.Web.Mvc
  • 右键点击它
  • 单击属性
  • 查看Version属性

  • 这很可能是您的版本,但GAC可能会让您感到困惑。

    如果您无法访问代码和/或想要确定已部署在计算机上的ASP.NET版本,您可以执行以下操作(从):

    如何确定我的计算机上安装了哪个版本的ASP.NET MVC 系统?

    对于MVC4.0、MVC5.0或MVC5.1,您应该已经部署了 应用程序中受影响的二进制文件(System.Web.MVC.dll)。检查你的 二进制文件版本的应用程序的bin文件夹。对于MVC2.0, MVC 3.0或MVC 4.0,请参阅“添加或删除程序”控制面板 安装的MVC版本的项


    使用可以安装的NuGet软件包MVCDDiagnostics。创建一个MVC“hello world”或其他一些基本程序,然后安装此软件包。安装将提示项目向其中添加文件。确认后,您将看到MvcDiagnostics.aspx添加到您的项目中。在解决方案查看器中右键单击此文件,然后选择“在浏览器中查看”。然后,您将看到一个包含所有程序集信息的漂亮页面。我的如下所示:

    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
    

    在解决方案资源管理器中打开packages.config

    然后查找ASP.NET MVC包ID,如下所示:


    id=“Microsoft.AspNet.Mvc”version=“5.2.2”targetFramework=“net452”

    运行时-

    string mvcVersion = typeof (Controller).Assembly.GetName().Version.ToString();
    
    在设计时-

    string mvcVersion = typeof (Controller).Assembly.GetName().Version.ToString();
    
    • 转到你的参考文件夹
    • 查找system.web.mvc
    • 右键点击它
    • 单击属性查看版本属性

    .

    您还可以检查项目中安装的nuget软件包的版本

    您可以使用软件包管理器控制台:

    Get-Package Microsoft.AspNet.Mvc
    

    这是另一种为ASP net核心项目查找MVC版本的方法,方法是向主控制器添加小代码。希望这会有帮助

    转到Project Controller文件夹,打开“HomeController.cs”文件。在HomeController.cs文件中,有一个返回类型为ActionResult/IActionResults的索引方法。只需将方法类型从ActionResult更改为string,并将下面给出的代码写入该方法

    返回typeof(Controller.Assembly.GetName().Version.ToString()


    运行您的项目,您可以在主页上看到项目中使用的MVC版本。

    所谓“酷”是指“高效”还是“复杂”?可能是非常好的重复!我在mvc源代码中检查了MvcHandler.GetMvcVersionString()(但是私有方法,很遗憾..)。还可以检查名称以确认它实际上是一个mvc应用程序:typeof(Controller).Assembly.GetName().name,或者同时检查两者:typeof(Controller).Assembly.GetName().FullName。我一开始不明白在
    创建新项目
    窗口中asp模板是4.6版编写的,但我的MVC参考程序集是5版:|这个答案到底给线程添加了什么?您刚刚复制了其他答案。请尝试再次添加,但要进行备份