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 方法部署网站应用。

结果展示

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

asp.net core + mysql + ef core + linux的更多相关文章

  1. 【ASP.NET Core】EF Core - “影子属性” 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1

    [ASP.NET Core]EF Core - “影子属性”   有朋友说老周近来博客更新较慢,确实有些慢,因为有些 bug 要研究,另外就是老周把部分内容转到直播上面,所以写博客的内容减少了一点. ...

  2. net Core 通过 Ef Core 访问、管理Mysql

    net Core 通过 Ef Core 访问.管理Mysql 本文地址:http://www.cnblogs.com/likeli/p/5910524.html 环境 dotnet Core版本:1. ...

  3. 一个官翻教程集合:ASP.NET Core 和 EF Core 系列教程

    通过一个大学课程案例讲解了复杂实体的创建过程及讲解 1.ASP.NET Core 和 Entity Framework Core 系列教程——入门 (1 / 10) 2.ASP.NET Core 和 ...

  4. ASP.NET CORE 使用 EF CORE访问数据库

    asp.net core通过ef core来访问数据库,这里用的是代码优先,通过迁移来同步数据库与模型. 环境:vs2017,win10,asp.net core 2.1 一.从建立asp.net c ...

  5. .NET 5/.NET Core使用EF Core 5连接MySQL数据库写入/读取数据示例教程

    本文首发于<.NET 5/.NET Core使用EF Core 5(Entity Framework Core)连接MySQL数据库写入/读取数据示例教程> 前言 在.NET Core/. ...

  6. Entity Framework Core(EF Core) 最简单的入门示例

    目录 概述 基于 .NET Core 的 EF Core 入门 创建新项目 更改当前目录 安装 Entity Framework Core 创建模型 创建数据库 使用模型 基于 ASP.NET Cor ...

  7. .net core webapi+EF Core

    .net core webapi+EF Core 一.描述: EF Core必须下载.net core2.0版本 Micorsoft.EntityFrameworkCore:EF框架的核心包Micor ...

  8. [.NET Core] - 使用 EF Core 的 Scaffold-DbContext 脚手架命令创建 DbContext

    Scaffold-DbContext 命令 参数 Scaffold-DbContext [-Connection] <String> [-Provider] <String> ...

  9. ASP.NET Core使用EF Core操作MySql数据库

    ASP.NET Core操作MySql数据库, 这样整套环境都可以布署在Linux上 使用微软的 Microsoft.EntityFrameworkCore(2.1.4) 和MySql出的 MySql ...

随机推荐

  1. MVC+Jqgrid

    基于MVC+Jqgrid的列表页面 2014-12-08 12:01 by 刘尼玛, 1583 阅读, 20 评论, 收藏, 编辑 一.前言 “尼玛哥,上周你教我改了下OA系统UI,黄总看了很满意呀. ...

  2. NHibernate系列

    NHibernate系列 写在前面 这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天. nhibernate系列从开始着手写,到现在前后耗 ...

  3. Spring Resource之作为依赖的资源

    如果一个bean自己能够通过一些动态的过程来决定和提供一些资源路径,那么通过ResourceLoader接口来加载资源会是更有效的.考虑作为一个例子的加载模板,需要的指定的资源取决于用户的角色.如果资 ...

  4. [译]ava 设计模式之构造器

    (文章翻译自Java Design Pattern: Builder) 构造器模式的关键之处在于它使用一步接招一步的流程去构建东西,例如:尽管构建的每一步是不相同的但是每一个产品还是遵循相同的流程. ...

  5. cocos2dx对于强大的RichText控制

    最近准备做一个聊天系统,开始准备使用cocos2dx的UIRichText控制显示屏聊天,在使用中发现的结果,cocos2dx的RichText很有限.全然不具备实现聊天的功能.仅仅实现了增加文本.图 ...

  6. 条件变量signal与unlock的顺序

    编写同步队列时,有用到条件变量,对操作队列的线程进行同步.当队列为空时,允许get线程挂起,直到add线程向队列添加元素并通过唤醒条件变量,get线程继续向下运行.条件变量在多线程程序中用来实现“等待 ...

  7. beanutils中Lazy

    public class LazyBean { //    public static void main(String[] args) {//        DynaBean dynaBean=ne ...

  8. [转]当图片源大小大于ImageView大小时的处理方式(缩放)

    转一篇当图片源大小大于ImageView大小定死时的处理方法,但不适用于图片大小小于ImageView时的情况,因为inSampleSize不能<1, 谁有特别好的放大的解决方案,除了设置Ima ...

  9. 在GridView的中有一个DropDownList,并且DropDownList有回传事件

    在GridView的中有一个DropDownList,并且DropDownList有回传事件 最近做一个项目,需要在GridView中的ItemTemplate中添加一个DropDownList,并且 ...

  10. Mvc的多层架构

    分享一个Mvc的多层架构,欢迎大家拍砖斧正   多层架构是什么? 多层架构是开发人员在开发过程当中面对复杂且易变的需求采取的一种以隔离控制为主的应对策略,关于多层架构的标准,我认为有一句话是比较有代表 ...