微软官方实例 RazorPagesMovie 在 asp.net core 2.1 版本下的实战
微软官方实例 RazorPagesMovie 在 asp.net core 2.1 版本下的实战
友情提示:
操作系统: MacOS 10.13.5
dotnet core: version 2.1.300
1、运行 dotnet 命令创建RazorPagesMovie项目
dotnet new webapp -o RazorPagesMovie
2、进入 RazorPagesMovie 目录,运行项目。然后,在浏览器中访问 localhost:5000 来查看项目运行情况。
cd RazorPagesMovie
dotnet run
当出现
Using launch settings from /Users/zhm/OneDrive/CodeStudy/dotnetcore/RazorPagesMovie/Properties/launchSettings.json...
: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0]
User profile is available. Using '/Users/zhm/.aspnet/DataProtection-Keys' as key repository; keys will not be encrypted at rest.
Hosting environment: Development
Content root path: /Users/zhm/OneDrive/CodeStudy/dotnetcore/RazorPagesMovie
Now listening on: https://localhost:5001
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
的时候,就可在浏览器里浏览项目了
3、在项目目录下新建一个Models目录,并进入目录
a、创建实体类文件Movie.cs,内容如下:
using System;
namespace RazorPagesMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
}
b、创建数据上下文文件MovieContext.cs,内容如下:
using Microsoft.EntityFrameworkCore;
namespace RazorPagesMovie.Models
{
public class MovieContext : DbContext
{
public MovieContext(DbContextOptions<MovieContext> options)
: base(options)
{
}
public DbSet<Movie> Movie { get; set; }
}
}
c、打开appsetting.json文件,然后在文件中添加数据库连接字符串
{
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
},
"ConnectionStrings": {
"MovieContext": "Data Source=MvcMovie.db"
}
}
4、在Startup.cs文件中,注册数据库上下文
public void ConfigureServices(IServiceCollection services)
{
// requires
// using RazorPagesMovie.Models;
// using Microsoft.EntityFrameworkCore;
services.AddDbContext<MovieContext>(options =>
options.UseSqlite(Configuration.GetConnectionString("MovieContext")));
services.AddMvc();
}
5、安装用于进行迁移的 Entity Framework Core NuGet 包
打开 RazorPagesMovie.csproj,在里面新建一个 节点,在其中添加Microsoft.EntityFrameworkCore.Tools.DotNet工具的引用
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.0.4" />
</ItemGroup>
6、添加基架工具并执行初始迁移
首先,运行如下命令:
dotnet add package Microsoft.AspNetCore.Razor.Language -v 2.1.0
dotnet add package Microsoft.EntityFrameworkCore.Sqlite -v 2.1.0
dotnet add package Microsoft.EntityFrameworkCore.Tools.DotNet --version 2.1.0-preview1-final
dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design -v 2.1.0
来添加package
然后,运行如下命令,来进行初始迁移:
dotnet restore
dotnet ef migrations add InitialCreate
dotnet ef database update
最终,运行
dotnet run
来运行项目,并在浏览器中使用 localhost:5000/movies 来访问。
微软官方实例 RazorPagesMovie 在 asp.net core 2.1 版本下的实战的更多相关文章
- ASP.NET Core 1.1版本之Hello word
1.下载ASP.NET Core 1.1版本,并且安装. 2.新建一个工作文件夹,本文以WebApiFrame名称为例建立一个新的文件夹: mk WebApiFrame 3.启动命令行,在命令行中进入 ...
- 《ASP.NET Core跨平台开发从入门到实战》Web API自定义格式化protobuf
<ASP.NET Core跨平台开发从入门到实战>样章节 Web API自定义格式化protobuf. 样章 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于 ...
- ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客
原文:ASP.NET Core默认注入方式下如何注入多个实现(多种方式) - sky 胡萝卜星星 - CSDN博客 版权声明:本文为starfd原创文章,转载请标明出处. https://blog.c ...
- ASP.NET Core 中间件详解及项目实战
前言 在上篇文章主要介绍了DotNetCore项目状况,本篇文章是我们在开发自己的项目中实际使用的,比较贴合实际应用,算是对中间件的一个深入使用了,不是简单的Hello World,如果你觉得本篇文章 ...
- [转]ASP.NET Core 中间件详解及项目实战
本文转自:http://www.cnblogs.com/savorboard/p/5586229.html 前言 在上篇文章主要介绍了DotNetCore项目状况,本篇文章是我们在开发自己的项目中实际 ...
- 【转载】ASP.NET Core 中间件详解及项目实战
前言 在上篇文章主要介绍了DotNetCore项目状况,本篇文章是我们在开发自己的项目中实际使用的,比较贴合实际应用,算是对中间件的一个深入使用了,不是简单的Hello World,如果你觉得本篇文章 ...
- asp.net core 发布到linux下Docker
1.linux Docker 安装 内核升级:https://www.cnblogs.com/zksfyz/p/7919425.html 安装: https://www.runoob.com/do ...
- asp.net core web api 版本控控制
通过微软的一个库Microsoft.AspNetCore.Mvc.Versioning实现asp.net core web api的版本控制. 以两种形式组织了Controller: 文件夹分开 命名 ...
- ASP .Net Core 在 CentOS8 ARM 下连接 SQL Server 2008 R2(Hypervisor)
本文主要记录在 ARM 系统下无法连接SQL Server 2008 R2 的解决过程. 解决方案是使用 ODBC 的方式连接数据库,进行操作. 手上有公司的华为鲲鹏云计算 ARM 架构的 CentO ...
随机推荐
- hdoj1260 Tickets (简单DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1260 思路: 很简单的DP题,状态方程也比较容易想到,用f[i]表示到第i个人所耗的最短时间,详见代码 ...
- 【校招面试 之 C/C++】第8题 C++中的静态绑定与动态绑定
转自:https://blog.csdn.net/chgaowei/article/details/6427731 做了部分修改 为了支持c++的多态性,才用了动态绑定和静态绑定.理解他们的区别有 ...
- GridView上同时定义了 DataSource 和 DataSourceId
VS平台下ASP.NET网站的建立,我们常常要跟数据库打交道,获取数据库的信息,通过GridView控件进行显示,需要为GridView指定 DataSourceId或者DataSource,切忌不可 ...
- Swift 基本语法03-"if let"和"guard let"
1. /// 如果JY_WINDOW有rootViewController, 并且rootViewController类型是AdvertisementViewController,就执行stopPla ...
- struts工作原理(图解)
Struts2框架的工作原理: 1.服务器启动,会加载我们的xml配置文件中的内容. 2.服务器启动之后,过来一个servlet请求,如user类中的save方法.请求过来先过过滤器(strutsPr ...
- Linux wget命令
一.简介 wget是一个Linux系统中的下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS ...
- conn not captured
线程 和 事件中 变量 not captured 把变量定义为 static 或者添加为全局变量(放在main之前)
- android的 Base64
byte[] key=Base64.decode("YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4".getBytes(), Base64.DEFAULT); ...
- android 混淆文件proguard.cfg详解 (转载)
-injars androidtest.jar[jar包所在地址] -outjars out[输出地址] -libraryjars 'D:\android-sdk-windows\platf ...
- 服务器的日志一直报Packet for query is too large (7632997 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.的解决方法
服务器的日志一直报Packet for query is too large (7632997 > 4194304). You can change this value on the serv ...