可以跨平臺運行嗎?
理論上c#和.Net 程序是跨平臺的,C#作為一種編程語言,早在2003年就成為ISO的標準之一。但是有很多實際問題。
1. 微軟官方并沒有提供除Windows(包括windows mobile)以外的其他系統,如Linux,蘋果,Unix,等等的Framework。而不像Sun公司開發Windows,Linux以及手機版等多個版本JRE(Java Run Enviroment). 就是說C#和Java語言理論上都是針對各自的虛擬機開發的,而虛擬機(微軟的虛擬機叫.Net Framework, Sun的虛擬機叫JRE)不是跨平臺的,目前,除Windows外,還沒有其他操作系統上有穩定版本的.Net Framework環境,提供給.Net 程序來運行。Linux上的Mono項目只實現了.Net Framework 1.1的規范,遠遠落后于Windows平臺。
2. 許多Dot Net 開發者處于某種需要,如功能性和效率性,調用了Windows操作系統的API函數,而這些函數的名稱不是跨平臺的。