1.安装Entity Framework Core
在程序管理器控制台运行:
Install-package Microsoft.EntityFrameWorkCore.Sqlserver
运行:Install -package Microsoft.EntityFrameworkCore.Tools
2.创建一C#对象代表要查询和保存上的数据:
Blog类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace testDB.Models
{
public class Blog
{
public Blog()
{
Post = new HashSet<Post>();
}
public int BlogId { get; set; }
public string Url { get; set; }
public virtual ICollection<Post> Post { get; set; }
}
}
Post类:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace testDB.Models
{
public class Post
{
public int PostId { get; set; }
public int BlogId { get; set; }
public string Content { get; set; }
public string Title { get; set; }
public virtual Blog Blog { get; set; }
}
}
创建BlogController添加数据库上下文
数据库上下文:
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace testDB.Models
{
public class BloggingContext:DbContext
{
#region Constructor
public BloggingContext(DbContextOptions<BloggingContext> options)
: base(options)
{ }
#endregion
public virtual DbSet<Blog> Blog { get; set; }
public virtual DbSet<Post> Post { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Blog>(entity =>
{
entity.Property(e => e.Url).IsRequired();
});
modelBuilder.Entity<Post>(entity =>
{
entity.HasOne(d => d.Blog)
.WithMany(p => p.Post)
.HasForeignKey(d => d.BlogId);
});
}
}
}
Startup.cs文件:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
var connection = @"Server=JOAN-PC;Database=Blogging;Trusted_Connection=True;ConnectRetryCount=0;uid=sa;pwd=abcd1234...";
services.AddDbContext<Models.BloggingContext>(options => options.UseSqlServer(connection));
}