ASP.Net Core的Code Fist代码先行操作方法

Asp.Net  core的Code Fist(代码先行)主要有以下几步:

1.创建实体类
2.创建数据库上下文
3.填加连接字符串
4.依赖注入
5.添加基架工具并执行初始迁移
6搭建模型的基本架构(更具模型生成网页Page)
首先需要在创建出实体类,此处以微软官方文档中的Movice实体类为例。
右键单击“Models”文件夹。 选择“添加” > “类”。 将类命名为“Movie”,并添加以下属性:

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; }
}
}

同时填加数据库上下文
向“Models”文件夹添加名为 MovieContext.cs 的 DbContext 派生类。

using Microsoft.EntityFrameworkCore;

namespace RazorPagesMovie.Models
{
public class MovieContext : DbContext
{
public MovieContext(DbContextOptions<MovieContext> options)
: base(options)
{
}

public DbSet<Movie> Movie { get; set; }
}
}
填加连接字符串
将连接字符串添加到 appsettings.json 文件。

{
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
},
"ConnectionStrings": {
"MovieContext": "Data Source=127.0.0.1;Initial Catalog=Movice;User Id=sa;Password=123456;"
}
}
注册数据库上下文
使用 Startup.cs 文件中的依存关系注入容器注册数据库上下文。

public void ConfigureServices(IServiceCollection services)
{
// requires
// using RazorPagesMovie.Models;
// using Microsoft.EntityFrameworkCore;

services.AddDbContext<MovieContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("MovieContext")));
services.AddMvc();
}
此时生成项目如果没有任何错误就可以进行命令行操作了。
添加基架工具并执行初始迁移
从“工具”菜单中,选择“NuGet 包管理器” > “包管理器控制台”。

 

在PowerShell中分别输入以下命令

Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design -Version 2.0.0
Add-Migration Initial
Update-Database
Install-Package 命令安装运行基架引擎所需的工具。
Add-Migration 命令生成用于创建初始数据库架构的代码。 此架构以(Models/MovieContext.cs 文件中的)DbContext 中指定的模型为基础。 Initial 参数用于为迁移命名。 可以使用任意名称,但是按照惯例应选择描述迁移的名称。

Update-Database用于将以上操作保存到数据库中(生成数据库)

搭建“电影”模型的基架
打开项目目录(包含 Program.cs、Startup.cs 和 .csproj 文件的目录)中的命令窗口。
运行下面的命令:

dotnet aspnet-codegenerator razorpage -m Movie -dc MovieContext -udl -outDir Pages\Movies --referenceScriptLibraries
下表详细说明了 ASP.NET Core 代码生成器的参数:

 

测试应用
运行应用并将 /Movies 追加到浏览器中的 URL (http://localhost:port/movies)。

此时就可以打开网页了。

---------------------
作者:码农阿宇
来源:CSDN
原文:https://blog.csdn.net/only_yu_yy/article/details/78735376
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2019-04-11 09:49  唔愛吃蘋果  阅读(314)  评论(0编辑  收藏  举报