2011-03-01 110 views
2

如何通过查看ASP.NET项目来了解它的内置版本。有人可以列出不同的方式来识别版本吗?如何知道它是哪个版本的ASP.net?

谢谢

+3

右击关于项目 - >项目属性,请参阅目标框架 – genericuser 2011-03-01 23:14:07

+0

“展望ASP.NET项目” - 然后再扩展一下。 – Charlino 2011-03-01 23:31:23

+0

我们可以在VS 2003中找到这个选项吗? – user536652 2011-03-02 16:35:49

回答

2

打开.csproj文件并查看它。你会看到这样的事情:

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    ... 
    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids> 
    ... 
    </PropertyGroup> 
</Project> 

ProjectTypeGuids就是识别什么样的Visual Studio项目这个东西 - 一些其他类型的项目的ASP.NET应用程序就像这个例子还是。不同的版本也意味着不同的GUID。你只需要找出这些ID是指什么。

4

您需要小心使用此处的方法,因为ASP.NET下的.NET框架的某些更新将看起来在以前的版本号下运行。例如;

  • ASP.NET 2.0的网站可能正在运行V2.0或V3.5框架和
  • ASP.NET 4.0的网站可能正在运行4.0版或4.5版构架

有有几种方法可以检查您正在运行的确切版本,请在您的网页上添加:

<%= System.Environment.Version.ToString() %> 

作为示例;

  • 如果你已经安装了V4.0,你会看到v4.0.30319.1008
  • 如果你已经安装了V4.5,你会看到v4.0.30319.34209

这将获得当前运行的版本。

HKEY_LOCAL_MACHINE \ SOFTWARE \微软\ NET Framework安装\新民主党\ V4 \全

在这个位置看版本节点:您可以检查注册表,所有已安装的版本。

  • ,如果您有V4.0 installated你会看到v4.0.30319
  • ,如果您有V4.5 installated你会看到v4.5.51209
0

我得到了这个工作很好,在ASP.NET v4.5,希望它有帮助。您可能需要为您的系统稍微调整一下。

<%@ Page Language="VB" Debug="true" %> 
<% 
Dim cmnNETver, cmnNETsplt, dotNETver, dotNETsplt, aspNETver, aspNETsplt As Object 
Dim osVersion, dotNETfil, aspNETfil, cmnNETfix, dotNETpth, dotNETtxt, dotNETfix, aspNETpth, aspNETtxt, aspNETfix As String 

osVersion = System.Environment.OSVersion.ToString 

dotNETfil = "ngen.exe" 
aspNETfil = "clr.dll" 

cmnNETver = System.Environment.Version.ToString 
cmnNETsplt = cmnNETver.Split(".") 
cmnNETfix = cmnNETsplt(0) & "." & cmnNETsplt(1) & "." & cmnNETsplt(2) 

dotNETpth = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Windows) & "\Microsoft.NET\Framework64\v" & cmnNETfix & "\" & dotNETfil 

If System.IO.File.Exists(dotNETpth) Then 
    dotNETver = System.Diagnostics.FileVersionInfo.GetVersionInfo(dotNETpth) 
    dotNETtxt = dotNETver.FileVersion.ToString 
    dotNETsplt = dotNETtxt.Split(" ") 
    dotNETfix = dotNETsplt(0) & " per " & dotNETfil 
Else 
    dotNETfix = "Path not found... No version found..." 
End If 

aspNETpth = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Windows) & "\Microsoft.NET\Framework64\v" & cmnNETfix & "\" & aspNETfil 

If System.IO.File.Exists(aspNETpth) Then 
    aspNETver = System.Diagnostics.FileVersionInfo.GetVersionInfo(aspNETpth) 
    aspNETtxt = aspNETver.FileVersion.ToString 
    aspNETsplt = aspNETtxt.Split(" ") 
    aspNETfix = aspNETsplt(0) & " per " & aspNETfil 
Else 
    aspNETfix = "Path not found... No version found..." 
End If 

Response.Write("Common MS.NET version: " & cmnNETver & "<br>") 
Response.Write("Common MS.NET path number: " & cmnNETfix & "<br>") 
Response.Write("Microsoft.NET full path: " & dotNETpth & "<br>") 
Response.Write("<b>Microsoft.NET version: " & dotNETfix & "</b><br>") 
Response.Write("ASP.NET full path: " & aspNETpth & "<br>") 
Response.Write("<b>ASP.NET version: " & aspNETfix & "</b><br>") 
Response.Write("OS version: " & osVersion & "<br>") 
%> 

在aspNETpath = “Framework64” 也可以是 “框架” 为我工作无论哪种方式,相同的输出,输出看起来像这样对我说:

Common MS.NET version: 4.0.30319.42000 
Common MS.NET path number: 4.0.30319 
Microsoft.NET full path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe 
Microsoft.NET version: 4.6.1586.0 per ngen.exe 
ASP.NET full path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll 
ASP.NET version: 4.7.2110.0 per clr.dll 
OS version: Microsoft Windows NT 10.0.14393.0 

干杯,AG

相关问题