Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.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
如何找到正在使用的C#和.NET/Mono版本?_C#_.net_Mono - Fatal编程技术网

如何找到正在使用的C#和.NET/Mono版本?

如何找到正在使用的C#和.NET/Mono版本?,c#,.net,mono,C#,.net,Mono,您可以使用System.Environment.Version获取CLR的版本;如何获得当前使用的C#和.NET或Mono framework的版本 编辑:我不是问你如何找到你使用的是Mono还是.NET。(我的问题的第一个版本确实将此作为第二个问题提出,但当我在别处看到该问题的答案时,我几乎立即删除了该问题。)这里的问题是(1)如何确定您使用的是什么版本的C#,以及(2)您使用的是什么版本的.NET(与CLR版本相反,CLR版本是) 已经提出了一个非常类似的问题: public static

您可以使用
System.Environment.Version
获取CLR的版本;如何获得当前使用的C#和.NET或Mono framework的版本


编辑:我不是问你如何找到你使用的是Mono还是.NET。(我的问题的第一个版本确实将此作为第二个问题提出,但当我在别处看到该问题的答案时,我几乎立即删除了该问题。)这里的问题是(1)如何确定您使用的是什么版本的C#,以及(2)您使用的是什么版本的.NET(与CLR版本相反,CLR版本是)

已经提出了一个非常类似的问题:

public static bool IsRunningOnMono ()
{
    return Type.GetType ("Mono.Runtime") != null;
}


为了检测运行时当前用于执行的.NET framework版本,您可以检查
环境。版本

检查您是否在mono中运行:

public static bool IsRunningOnMono ()
{
    return Type.GetType ("Mono.Runtime") != null;
}
检查mono版本:

Type type = Type.GetType("Mono.Runtime");
if (type != null)
{                                          
    MethodInfo dispalayName = type.GetMethod("GetDisplayName", BindingFlags.NonPublic | BindingFlags.Static); 
    if (dispalayName != null)                   
        Console.WriteLine(dispalayName.Invoke(null, null)); 
}

如果你不使用Mono,那么你仍然使用
System.Environment.Version

在执行时检查这个,没有使用“C”…@AakashM--啊,对了,我大脑中的Python部分接管了那里。是否有任何C#预处理器指令用于检查编译器版本号?这并不简单。
Environment.Version
是针对CLR版本的,不是针对.NET framework版本的,不是吗?谢谢。对于.NET,
System.Environment.Version
用于CLR版本,而不是.NET framework版本,不是吗?