博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASP.NET core 搭建于 Deepin 2015.4 记录
阅读量:5746 次
发布时间:2019-06-18

本文共 6909 字,大约阅读时间需要 23 分钟。

hot3.png

2017-05-13更新,可用,自己傻逼才会在Linux下用微软的烂玩意!!!

最新参考网页:

参考网页:

抱歉,微软的东西比较恶心,网址竟然变了,一部分失效了。更改。如有异常,请自行解决。

一、生活如此不堪

因为开发速度太慢,导致老大看不过去了,直接购买了别人的网站,之前使用PHP开发的,别人的源码是ASP.NET的,所幸对方提供源码,要给对方升级?

二、搭建ASP.NET的工作环境

一直使用Linux Deepin操作系统,已经两三年了,没有在电脑上存在Windows系统了,突然要装个盗版windows系统,实在不情愿,折腾系统太费劲了。遂用 VS Code和ASP.NET Core一起,在Deepin下,可否更好一点呢?就这样搭建吧。

三、搭建过程

1、安装 .NET Core SDK

到这个,点击下载这个,假设下载到 Desktop 桌面。

由于默认不支持 deepin格式,需要修改一下这个脚本。

$ gedit ~/Desktop/dotnet-install.sh

搜素 debiandebian.8前,照瓢画葫芦,加入 “deepin.15.4"的内容。

"deepin.15.4")                    echo "debian"                    return 0                    ;;                "debian.8")                    echo "debian"                    return 0                    ;;    ```实现deepin 15.4 也可以直接安装。接着输入如下命令。```bash$ sudo apt-get install curl libunwind8 gettext libicu52$ sudo su# mkdir -p /opt/dotnet# cd /home/
/Desktop# chmod u+x ./dotnet-install.sh# ./dotnet-install.sh --version 1.0.4 --install-dir /opt/dotnet/

解释

  • 最开始使用 sudo 直接执行这些命令,发现 dotnet-install.sh 会报错。无解,遂切换至 root 用户下安装。
  • 最后一句的意思:选择 1.0.4 版本,安装目录为 /opt/dotnet/ 。这样选择的原因,是查到了这里 找了一个老版本稳定点的下载。
  • 经过一个漫长的下载过程,可能会成功,也也可能失败。感觉微软这方面做的比较烦,无可奈何。

接下来就是建立链接了

$ sudo ln -s /opt/dotnet/dotnet /usr/local/bin

2、查看版本

dotnet --version

一般会看到版本号,跟上方的 1.0.4 一致。

3、简单例子

cd    mkdir www    cd www    mkdir test    cd test    dotnet new

新建一个可能会弹出如下问题。

Template Instantiation Commands for .NET Core CLI.Usage: dotnet new [arguments] [options]Arguments:  template  The template to instantiate.Options:  -l|--list         List templates containing the specified name.  -lang|--language  Specifies the language of the template to create  -n|--name         The name for the output being created. If no name is specified, the name of the current directory is used.  -o|--output       Location to place the generated output.  -h|--help         Displays help for this command.  -all|--show-all   Shows all templatesSegmentation fault

网上搜了很久,说了很多废话,貌似用之前的解决方案就可以了。

$ sudo dpkg -i /path/to/libcurl3_7.38.0-4+deb8u3_amd64.deb

其中,libcurl3_7.38.0-4+deb8u3_amd64.deb 是在 debian 官网找到下载的。 下面继续测试。

$ sudo apt-get purge curl$ sudo apt-mark hold libcurl3$ cd ~/www/test$ dotnet new

可能会弹出如下的界面

Templates                 Short Name      Language      Tags          ----------------------------------------------------------------------Console Application       console         [C#], F#      Common/ConsoleClass library             classlib        [C#], F#      Common/LibraryUnit Test Project         mstest          [C#], F#      Test/MSTest   xUnit Test Project        xunit           [C#], F#      Test/xUnit    ASP.NET Core Empty        web             [C#]          Web/Empty     ASP.NET Core Web App      mvc             [C#], F#      Web/MVC       ASP.NET Core Web API      webapi          [C#]          Web/WebAPI    Solution File             sln                           Solution      Examples:    dotnet new mvc --auth None --framework netcoreapp1.1    dotnet new mvc --framework netcoreapp1.1    dotnet new --help

输入如下命令,

$ dotnet new mvc --auth None --framework netcoreapp1.1

新建并初始化,

$   dotnet restore $   dotnet run

4、安装 Yeoman, Bower, Grunt, Gulp, ASP.NET core 等的生成器

本小点内容主要参考.

sudo npm install -g yo bower grunt-cli gulpsudo npm install -g generator-aspnet

解释

  • 假设你已经成功安装了 npm,如需请百度怎么安装。

5、另外一个简单例子

cd ~/www    yo aspnet

解释

  • 按照输出提示,新建一个 WebLM 的网站,显示内容如下。
yo aspnet? ==========================================================================We're constantly looking for ways to make yo better! May we anonymously report usage statistics to improve the tool over time? More info: https://github.com/yeoman/insight & http://yeoman.io========================================================================== Yes     _-----_     ╭──────────────────────────╮    |       |    │      Welcome to the      │    |--(o)--|    │  marvellous ASP.NET Core │   `---------´   │        generator!        │    ( _´U`_ )    ╰──────────────────────────╯    /___A___\   /     |  ~  |        __'.___.'__    ´   `  |° ´ Y ` ? What type of application do you want to create? Web Application? Which UI framework would you like to use? Bootstrap (3.3.6)? What's the name of your ASP.NET application? WebLW

解释

  • 接下来就是一大堆安装提示信息了,并有如下内容
Your project is now created, you can use the following commands to get going    cd "WebLW"    dotnet restore    dotnet build (optional, build will also happen when it's run)    dotnet ef database update (to create the SQLite database for the project)    dotnet run

解释

  • 如果提示 bower ECMDERR 之类的信息,可能需要自行安装一些插件 比如
cd ~/www/WebLW    bower install

如果没有报错,继续使用上面提示的内容

cd ~/www/WebLW    dotnet restore    dotnet build    dotnet ef database update    dotnet run

根据提示进入 应该可以看到如下的界面了。 Deepin 15.2 安装 ASP.NET core

输入图片说明

6、安装 vscode 及其插件

这个比较傻瓜了,直接使用命令即可

sudo apt-get install vscode -y

其他插件安装可以自行百度。 我现在安装的插件有

  • donjayamanne.githistory-0.0.10
  • ms-vscode.csharp-1.4.0
  • felixfbecker.php-debug-1.9.4
  • ms-vscode.omnisharp-0.3.3
  • Kasik96.format-indent-1.3.0

四、打补丁

现在直接使用命令 code 打开 vscode,发现会弹出

[ERROR] Could not locate an OmniSharp server that supports your Linux distribution.OmniSharp provides a richer C# editing experience, with features like IntelliSense and Find All References.It is recommend that you download the version of OmniSharp that runs on Mono using the following steps:    1. If it's not already installed, download and install Mono (https://www.mono-project.com)    2. Download and untar the latest OmniSharp Mono release from  https://github.com/OmniSharp/omnisharp-roslyn/releases/    3. In Visual Studio Code, select Preferences->User Settings to open settings.json.    4. In settings.json, add a new setting: "omnisharp.path": "/path/to/omnisharp/OmniSharp.exe"    5. In settings.json, add a new setting: "omnisharp.useMono": true    6. Restart Visual Studio Code.

1、关于 Mono 的安装

sudo apt-get install mono-complete

算是安装成功啦。

2、下载 OmniSharp Mono Release

到: 下载最新的,当前 v1.9-beta14,解压缩后,放在 ~/.vscode文件夹下

cd ~/.vscode    mkdir omnisharp    cd omnisharp    cp /path/to/omnisharp-mono.tar.gz ./    tar zxvf omnisharp-mono.tar.gz    ls

解释 会在这个文件夹下发现 ~/.vscode/omnisharp/OmniSharp.exe 文件,对就是这个带 exe 的文件,按照上面的说法,Visual Studio Code, 选择 Preferences->User Settings 打开 settings.json. 在 settings.json, 加上 "omnisharp.path": "/path/to/omnisharp/OmniSharp.exe" 和"omnisharp.useMono": true

// Place your settings in this file to overwrite the default settings{    "omnisharp.path": "/home/litianci/.vscode/omnisharp/OmniSharp.exe",    "omnisharp.useMono": true}

解释

  • 里面的地址需要根据实际情况修改。
  • 重启 vscode.

2、安装 dnvm, dnv,dnx 等

curl -sSL https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.sh | DNX_BRANCH=dev sh && source ~/.dnx/dnvm/dnvm.sh

安装好了 dnvm, 需要自己首先安装 curl

dnvm upgrade -r monodnvm upgrade -r coreclr # 先安装吧,不为过。sudo apt-get install mono-complete # 安装全套,我也不知道需要不需要更多内容sudo apt-get install libuv1 # 安装 libuv1

3、使用 vscode 打开上述例子。

这里不再废话,有问题,欢迎下面留言。

五、VSCode 一个复杂的 quizz 例子

代码复制于 某章节,下面试着在 deepin 下熟悉 C# 和 ASP.NET core 的一般编写过程。(待续)

转载于:https://my.oschina.net/bubifengyun/blog/738634

你可能感兴趣的文章
Android开发历程_15(AppWidget的使用)
查看>>
阿花宝宝 Java 笔记 之 初识java
查看>>
7、设计模式-创建型模式-建造者模式
查看>>
我国古代的勾股定理
查看>>
Linux下的C编程实战
查看>>
[32期] html中部分代码与英语单词关系
查看>>
PHP安装环境,服务器不支持curl_exec的解决办法
查看>>
jQuery|元素遍历
查看>>
用 ThreadLocal 管理用户session
查看>>
setprecision后是要四舍五入吗?
查看>>
shiro初步 shiro授权
查看>>
上云就是这么简单——阿里云10分钟快速入门
查看>>
MFC多线程的创建,包括工作线程和用户界面线程
查看>>
我的友情链接
查看>>
FreeNAS8 ISCSI target & initiator for linux/windows
查看>>
cvs文件提交冲突解决方案
查看>>
PostgreSQL数据库集群初始化
查看>>
++重载
查看>>
Rainbond 5.0.4版本发布-做最好用的云应用操作系统
查看>>
nodejs 完成mqtt服务端
查看>>