当前位置:Gxlcms > 数据库问题 > 麻雀虽小,五脏俱全。基于Asp.net core + Sqlite 5分钟快速上手一个小项目

麻雀虽小,五脏俱全。基于Asp.net core + Sqlite 5分钟快速上手一个小项目

时间:2021-07-01 10:21:17 帮助过:28人阅读

歌曲信息 public class Music { // 歌曲ID与名称 public int Id { get; set; } public string Title { get; set; } // 歌曲的流派ID与所属流派 public int GenreId { get; set; } public Genre Context { get; set; } // 歌曲的歌手ID以及歌手 public int SingerId { get; set; } public Singer Owner { get; set; } } // 流派信息 public class Genre { // 歌曲流派Id及流派名 public int Id { get; set; } public string Name { get; set; } // 该流派的歌曲集合 public IEnumerable<Music> Musics { get; set; } } // 歌手信息 public class Singer { // 歌手id public int Id { get; set; } // 歌手名字 public string Name { get; set; } // 歌手生日 public int BirthYear { get; set; } }

建立数据库上下文类MyContext,并关联歌曲、流派、歌手数据。

这里要using Microsoft.EntityFrameworkCore;

其中public DbSet<Music> Musics { get; set; }  表示在数据库生成表Musics,同理Genre、Singer

using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace test.Models
{
    public class MyContext: DbContext
    {
        public MyContext(DbContextOptions<MyContext> options) : base(options)
        {

        }

        public DbSet<Music> Musics { get; set; }

        public DbSet<Genre> Genres { get; set; }

        public DbSet<Singer> Singers { get; set; }
    }
}

4.配置文件

在Startup类:

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Sqlite;
using test.Models;  //此处根据自己建立的项目而定

在Startup的ConfigureServices添加如下代码:

其中:前一段代码为sqlite数据库的绝对地址,后一段为应用程序与数据库的连接字符串

            string connecttext = "Filename=F:\\core5\\mymusicwakawaka\\mymusicwakawaka\\mymusic.DB";
            services.AddDbContext<MyContext>(options => options.UseSqlite(connecttext));

技术图片

5.生成数据库

在程序包管理控制台使用Add-Migration InitialCreate命令生成数据库。

这时候会多出一个文件夹Migrations

技术图片

使用命令Update-Database更新数据库内容。EF core更多内容点击这里。

技术图片

6.添加控制器

技术图片

该框架自动定义了以下内容:

技术图片

分别为歌曲、流派、歌手添加对应的控制器。

技术图片

在Share文件夹下的_Layout下添加歌曲、流派、歌手的标签。

技术图片

7.运行试试

添加歌手界面

技术图片

添加了以后:

技术图片

完成!!

sqlite是一款轻量级数据库,可使用数据库查看器查看。

技术图片

麻雀虽小,五脏俱全。基于Asp.net core + Sqlite 5分钟快速上手一个小项目

标签:管理器   linq   mamicode   res   ons   程序包管理   pac   根据   ring   

人气教程排行