ubuntu16.04 下 C# mono开发环境搭建

本文转自:https://www.cnblogs.com/2186009311CFF/p/9204031.html

前记

之前我一直不看好C#的前景,因为我认为它只能在windows下运行,不兼容,对于长远的开发有局限性,再者一直听说微软收费,在我的世界里,免费的才是长久的,所以我一直不喜欢C#,虽然我要靠它工作,我一直想着转行,所以我之前就学了java和linux方面的知识,最近找工作, 但是不想在自己的电脑上安装VS和sqlserver(因为太大了),于是想在虚拟机上装,无奈windows 10的镜像太大,说用U盘装,但是本人笔记本没有光驱,按F12、F2啥的都不进入bois模式,于是想起了在ubuntu看能否进行C#的开发,居然有,我也是很开心,以下是今天的探索。

1.文件下载

Ubuntu国内镜像:http://mirrors.aliyun.com/ubuntu-releases/16.04/

我下的是下面标记的这个

虚拟机:可以留言,也可自行百度

2.虚拟机上安装Ubuntu

(以下只有关键步骤记录,其余步骤也很容易,不是新手不百度也能应对,有问题可以留言探讨)

查看更新包读取的内容

vi /etc/apt/sources.list  

Esc   :q  enter   退出

遇到的连不上网的问题解决

 因笔记本是连WiFi的,装的虚拟机一直连不上网,我很郁闷,一直ping 不通,ifconfig也是下面的情况

后面通过设置无线共享和打开服务解决了

 From 192.168.25.133 icmp_seq=238 Destination Host Unreachable 类似的报错,是要去开启服务

安装mono

先update,因为大部分没有这个包,就算用安装的语句也是提示没有包

update :sudo apt-get  update

安装C#编译环境:sudo apt-get install mono-devel 

下面是我更新后安装的报错:

 后面用这个语句安装成功:sudo apt-get install mono-complete

查看mono版本 :mono --version

安装IDE获取更强大的功能 :sudo apt-get install monodevelop

 用了一会,安装成功

打开C#环境

monodevelop
即可打开monodevelop IDE,值得注意的是,要区分大小写不是Monodevelop而是monodevelop

 使用MONO

 

 

 

 

代码如下:

using System;
using Gtk;

public partial class MainWindow: Gtk.Window
{
    private  Button btnOK;
    public MainWindow () : base (Gtk.WindowType.Toplevel)
    {
        Initialize ();
        Build ();
        //Initialize ();not have button
    }

    protected void OnDeleteEvent (object sender, DeleteEventArgs a)
    {
        Application.Quit ();
        a.RetVal = true;
    }

    protected void OnButton1Pressed (object sender, EventArgs e)
    {
        //throw new NotImplementedException ();
        MessageDialog msgDlg = new MessageDialog (null, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, "{0}", "Hello World! ");
        msgDlg.Show ();

    }
    private  void  Initialize()
    {
        btnOK = new Button ("OK");
        btnOK.Clicked += HandleBtnOKClicked;
        this.Add (btnOK );

    }

    protected void HandleBtnOKClicked (object sender, EventArgs e)
    {
        MessageDialog msgDlg = new MessageDialog (null, DialogFlags.Modal, MessageType.Info, ButtonsType.Ok, "{0}", "Hello World! ");
        msgDlg.Show ();
    }
}

  运行结果如下:

 设置占屏尺寸

xrandr  -s  1280*1024

 参考原理说明:https://blog.csdn.net/xiaohui_hubei/article/details/12658285

参考安装指令说明:https://blog.csdn.net/PPXFMiao/article/details/77774362   https://blog.csdn.net/u012581999/article/details/52437896

战略指引:http://www.xuebuyuan.com/143374.html

原文地址:https://www.cnblogs.com/2186009311CFF/p/9204031.html