如何检查系统上加载的ASP.NET版本?

fhity93d  于 6个月前  发布在  .NET
关注(0)|答案(9)|浏览(97)

如何检查系统上安装的ASP.NET版本?

mefy6pfw

mefy6pfw1#

您可以使用

<%
Response.Write("Version: " + System.Environment.Version.ToString());
%>

字符串
这将获取当前运行的版本。您可以在注册表中检查所有已安装的版本:
HKEY_MACHINE\SOFTWARE\Microsoft\NET Framework安装程序\NDP

vlju58qv

vlju58qv2#

您可以查看在使用Google Chrome +开发者工具(预装)或Firefox + Firebug(附加组件)加载页面时执行的版本。
我使用Google Chrome:
1.打开Chrome并使用Ctrl+Shift+I打开开发人员工具。
1.转到“网络”选项卡
1.点击底部的小按钮“导航时保存日志”
1.加载任何页面
1.点击响应标题
它看起来像这样:


的数据

w1e3prcc

w1e3prcc3#

我有同样的问题,找到一种方法来检查是否ASP.NET 4.5是在服务器上.因为v4.5是在取代v4.0的地方,如果你看c:\windows\Microsoft.NET\Framework,你不会看到v4.5文件夹.其实有一个简单的方法来查看安装在机器上的版本.在Windows Server 2008或Windows 7下,只要去控制面板->程序和功能,你会发现“Microsoft .NET Framework 4.5”如果它被安装.

3duebb1j

3duebb1j4#

在c:\windows\Microsoft.NET\Framework中查找,您将看到以“v”开头的各种文件夹,指示安装的.NET版本。

ymzxtsji

ymzxtsji5#

下面是一些返回已安装的.NET详细信息的代码:

<%@ Page Language="VB" Debug="true" %>
<%@ Import namespace="System" %>
<%@ Import namespace="System.IO" %>
<% 
Dim cmnNETver, cmnNETdiv, aspNETver, aspNETdiv As Object
Dim winOSver, cmnNETfix, aspNETfil(2), aspNETtxt(2), aspNETpth(2), aspNETfix(2) As String

winOSver = Environment.OSVersion.ToString
cmnNETver = Environment.Version.ToString
cmnNETdiv = cmnNETver.Split(".")
cmnNETfix = "v" & cmnNETdiv(0) & "." & cmnNETdiv(1) & "." & cmnNETdiv(2)

For filndx As Integer = 0 To 2
  aspNETfil(0) = "ngen.exe"
  aspNETfil(1) = "clr.dll"
  aspNETfil(2) = "KernelBase.dll"

  If filndx = 2   
    aspNETpth(filndx) = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System), aspNETfil(filndx))
  Else
    aspNETpth(filndx) = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Windows), "Microsoft.NET\Framework64", cmnNETfix, aspNETfil(filndx))
  End If

  If File.Exists(aspNETpth(filndx)) Then
    aspNETver = Diagnostics.FileVersionInfo.GetVersionInfo(aspNETpth(filndx))
    aspNETtxt(filndx) = aspNETver.FileVersion.ToString
    aspNETdiv = aspNETtxt(filndx).Split(" ")
    aspNETfix(filndx) = aspNETdiv(0)
  Else
    aspNETfix(filndx) = "Path not found... No version found..."
  End If
Next

Response.Write("Common MS.NET Version (raw): " & cmnNETver & "<br>")
Response.Write("Common MS.NET path: " & cmnNETfix & "<br>")
Response.Write("Microsoft.NET full path: " & aspNETpth(0) & "<br>")
Response.Write("Microsoft.NET Version (raw): " & aspNETtxt(0) & "<br>")
Response.Write("<b>Microsoft.NET Version: " & aspNETfix(0) & "</b><br>")
Response.Write("ASP.NET full path: " & aspNETpth(1) & "<br>")
Response.Write("ASP.NET Version (raw): " & aspNETtxt(1) & "<br>")
Response.Write("<b>ASP.NET Version: " & aspNETfix(1) & "</b><br>")
Response.Write("OS Version (system): " & winOSver & "<br>")
Response.Write("OS Version full path: " & aspNETpth(2) & "<br>")
Response.Write("OS Version (raw): " & aspNETtxt(2) & "<br>")
Response.Write("<b>OS Version: " & aspNETfix(2) & "</b><br>")
%>

字符串
这是新的输出,更干净的代码,更多的输出:

Common MS.NET Version (raw): 4.0.30319.42000
Common MS.NET path: v4.0.30319
Microsoft.NET full path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe
Microsoft.NET Version (raw): 4.6.1586.0 built by: NETFXREL2
Microsoft.NET Version: 4.6.1586.0
ASP.NET full path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
ASP.NET Version (raw): 4.7.2110.0 built by: NET47REL1LAST
ASP.NET Version: 4.7.2110.0
OS Version (system): Microsoft Windows NT 10.0.14393.0
OS Version full path: C:\Windows\system32\KernelBase.dll
OS Version (raw): 10.0.14393.1715 (rs1_release_inmarket.170906-1810)
OS Version: 10.0.14393.1715

flseospp

flseospp6#

或者,您可以在网页上创建一个Page_Load类型的按钮;

Trace.IsEnabled = True

字符串
并在按钮中点击事件类型;

Response.Write(Trace)


这将带来所有的跟踪信息,你会发现你的ASP.NET版本在“响应头集合”下的“X-ASPNet-Version”。

0ve6wy6x

0ve6wy6x7#

打开一个新的命令提示符并运行以下命令:dotnet --info

knsnq2tg

knsnq2tg8#

我也需要这些信息,用这种方法得到了信息,
启动PowerShell
运行“import-module servermanager”命令(不带引号)
之后,对于asp.net 3.5检查运行'get-windowsfeature web-asp-net'命令(不带引号)
对于asp.net 4.5检查,运行“get-windowsfeature Net-Framework-45-Core”命令(不带引号)
这两个命令都会在下面的安装状态标题中通知您。
在服务器环境中通过GUI检测版本,详细信息可在in this link.中找到

s71maibg

s71maibg9#

我不敢相信在这个帖子中一个接一个地出现了大量过于复杂和令人费解的答案。
打开你的终端并运行:

dotnet --list-runtimes

字符串
该命令将列出系统上安装和检测到的所有.Net运行时,其中包括ASP.NET运行时。
作为一个例子,这是我的系统上的输出:

me@myhost $ dotnet --list-runtimes
Microsoft.AspNetCore.App 6.0.24 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.24 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 6.0.24 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.25 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

相关问题