asp.net core + mysql + ef core + linux

以前开发网站是针对windows平台,在iis上部署。由于这次需求的目标服务器是linux系统,就尝试用跨平台的.NET core来开发和部署。结果还是比较满意,整个过程如下,欢迎交流:

开发环境:

Win10

Vs2015 update3+.NET Core tools

.NET Core SDK

Mysql

运行环境:

Ubuntu 16.04

.NET Core SDK

Mysql

Nginx

开发过程

  1. 安装vs2015+update3;安装mysql(https://dev.mysql.com/downloads/installer/
  2. 安装 .NET core tools(https://www.microsoft.com/net/core#windowsvs2015
  3. 新建asp.net core项目

4.通过Nuget安装MySql.Data.EntityFrameworkCore,Microsoft.EntityFrameworkCore.Tools。

在project.json文件中tools配置中增加"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"

5.在appsettings.json中添加数据库连接串配置。

6.项目中新增Models文件夹,添加User.cs

7.新增Data文件夹,添加ApplicationDbContext.cs,并修改Startup.cs文件中ConfigureServices方法。

8.新增Controller类UsersController.cs

9.新增视图,Create, Delete, Details, Edit 以及Index Razor 视图文件 (Views/Users)

10.在Views\Shared文件夹下新增部分视图_ValidationScriptsPartial.cshtml

11.修改Views\Shared\_Layout.cshtml,增加<li><aasp-area="" asp-controller="Users" asp-action="Index">Users</a></li>

12.打开命令行工具,导航到项目文件夹 D:\DotNetCore\TestWebApp\src\TestWebApp

运行以下两条命令:

dotnet ef migrations add Initial

dotnet ef database update

13.发布网站项目

发布前要修改Program.cs文件:

部署过程

  1. 把发布的文件夹PublishOutput上传到ubuntu虚拟机上。
  2. 在ubuntu上安装.net core sdk (https://www.microsoft.com/net/core#linuxubuntu
  3. 在ubuntu上安装配置mysql,并配置mysql不区分表明大小写,将应用数据库从windows导入到ubuntu上。
  4. 按照文档https://docs.microsoft.com/en-us/aspnet/core/publishing/linuxproduction 方法部署网站应用。

结果展示

在其他主机上访问网站,能够成功浏览网页,进行操作。

最新文章

  1. mac 下JDK 与 tomcat 的安装与配置
  2. C#中DateTime.Ticks属性及Unix时间戳转换
  3. [AngularJS] 使用AngularAMD动态加载Service
  4. 【精心推荐】几款极好的 JavaScript 文件上传插件
  5. 对Oracle10g rac srvctl命令使用理解
  6. AX2012全新的批处理方式
  7. 利用Linux下的pthread_mutex_t类型来实现哲学家进餐问题
  8. Javascript 面向对象编程(一):封装 by 阮一峰
  9. BZOJ 1002 轮状病毒 (基尔霍夫矩阵)
  10. eclipse怎么连接到MySQL中的表!!!!!
  11. nginx 安装三方包重新编译
  12. 苹果App Store开发者帐户从申请,验证,到发布应用(2)
  13. Python面向对象 -- 继承和多态、获取对象信息、实例属性和类属性
  14. PLSQL使用scott登录
  15. vue scoped 深度作用选择器
  16. ES6.0简单了解
  17. 无损压缩PNG工具
  18. !DOCTYPE 声明
  19. CopyTransform
  20. 北大POJ题库使用指南

热门文章

  1. WIN7远程桌面重启、关机
  2. 1cocos2dx扩展UI控制,CCControlSlider,CCScale9Sprite(九妹图。),CCControlSwitch,CCControlButton
  3. java这些东西发展(4)-------无穷time of error
  4. IE6/7中li浮动外边距无法撑开ul的解决方法
  5. oracle实现自加力id
  6. 【jar包】Android——eclipse共享library以及导出jar包
  7. Asp.Net Web Api 接口,拥抱支持跨域访问。
  8. [转载]John Burkardt搜集的FORTRAN源代码
  9. Ubuntu下安装Pyqt4
  10. GMap.Net