📜  检查 asp.net 核心的版本 - C# (1)

📅  最后修改于: 2023-12-03 15:26:43.040000             🧑  作者: Mango

检查 ASP.NET 核心的版本 - C#

当我们使用 ASP.NET Core 开发应用时,有时需要检查使用的 ASP.NET Core 版本号,此时可以使用以下 C# 代码来获取当前应用程序集的 ASP.NET Core 版本号。

public static string GetAspNetCoreVersion()
{
    // 获取当前应用程序集的字节数组
    var assembly = Assembly.GetEntryAssembly();
    var assemblyName = assembly.GetName();

    // 获取包含 ASP.NET Core 版本号的属性
    var attribute = assembly.GetCustomAttribute<Microsoft.AspNetCore.Mvc.ApiVersioning.ApiVersionAttribute>();
    if(attribute != null)
    {
        return $"ASP.NET Core Version: {attribute.Versions.FirstOrDefault().ToString()}";
    }
    else
    {
        return $"ASP.NET Core Version: {assemblyName.Version.Major}.{assemblyName.Version.Minor}";
    }
}

上面的代码首先获取当前应用程序集的字节数组,然后通过反射获取应用程序集中包含 ASP.NET Core 版本号的属性。这里使用了 Microsoft.AspNetCore.Mvc.ApiVersioning 库来获取 ASP.NET Core 版本号,如果使用其他库或者自己的代码来获取 ASP.NET Core 版本号,可以按照具体情况进行修改。

返回的格式为Markdown,代码片段如下:

# 检查 ASP.NET 核心的版本 - C#

当我们使用 ASP.NET Core 开发应用时,有时需要检查使用的 ASP.NET Core 版本号,此时可以使用以下 C# 代码来获取当前应用程序集的 ASP.NET Core 版本号。

```csharp
public static string GetAspNetCoreVersion()
{
    // 获取当前应用程序集的字节数组
    var assembly = Assembly.GetEntryAssembly();
    var assemblyName = assembly.GetName();

    // 获取包含 ASP.NET Core 版本号的属性
    var attribute = assembly.GetCustomAttribute<Microsoft.AspNetCore.Mvc.ApiVersioning.ApiVersionAttribute>();
    if(attribute != null)
    {
        return $"ASP.NET Core Version: {attribute.Versions.FirstOrDefault().ToString()}";
    }
    else
    {
        return $"ASP.NET Core Version: {assemblyName.Version.Major}.{assemblyName.Version.Minor}";
    }
}