thể trùng lặp:
How to detect which .NET runtime is being used (MS vs. Mono)?Làm cách nào để thông báo mã của tôi đang chạy trên Mono?
Trong .net cách dow Tôi nói nếu mã của tôi đang chạy trên Mono?
thể trùng lặp:
How to detect which .NET runtime is being used (MS vs. Mono)?Làm cách nào để thông báo mã của tôi đang chạy trên Mono?
Trong .net cách dow Tôi nói nếu mã của tôi đang chạy trên Mono?
Từ FAQ Mono:
http://www.mono-project.com/FAQ:_Technical
Dưới đây là trực tiếp từ liên kết đó:
Làm thế nào tôi có thể phát hiện nếu là chạy trong Mono?
Có mã phụ thuộc vào thời gian chạy cơ bản được coi là kiểu mã hóa kém, nhưng đôi khi mã như vậy là cần thiết để làm việc xung quanh lỗi thời gian chạy . Cách hỗ trợ phát hiện Mono là:
using System;
class Program {
static void Main()
{
Type t = Type.GetType ("Mono.Runtime");
if (t != null)
Console.WriteLine ("You are running with the Mono VM");
else
Console.WriteLine ("You are running something else");
}
}
Bất kỳ Hack khác, chẳng hạn như kiểm tra các loại cơ bản của System.Int32 hoặc các loại corlib khác, là cam chịu thất bại trong tương lai.
Dài và ngắn gọn, chỉ cần không.
public static bool IsRunningOnMono()
{
return Type.GetType ("Mono.Runtime") != null;
}
(Tôi được yêu cầu thêm làm nhận xét, xin lỗi) Kiểm tra màu = D (Tôi biết nó táo bạo nhưng meh) – Coops