当前位置: 首页 > news >正文

网站后台上传模板佐力药业股票

网站后台上传模板,佐力药业股票,哪个网站可以做代码题目,太原网站优化技术Entity FrameWork EF 总结 EF Core EF Core 如果实体模型很多,全部放在 上下文中的 OnModelCreating(ModelBuilder modelBuilder) 不太好维护 可以把实体模型 分离出去,每个类创建一个实体模型 public class BookConfiguration :IEntityT…

Entity FrameWork EF 总结

EF Core

EF Core 如果实体模型很多,全部放在 上下文中的 OnModelCreating(ModelBuilder modelBuilder) 不太好维护

可以把实体模型 分离出去,每个类创建一个实体模型

public class BookConfiguration :IEntityTypeConfiguration<Account>
{public void Configure(EntityTypeBuilder<Book> builder){//  把之前上下文中的  OnModelCreating(ModelBuilder modelBuilder) // 对应Account 的数据模型  复制到此处  即可builder.ToAble("Book")}
}

》》》原来的上下文中 替换成如下

protected override void OnModelCreating(ModelBuilder modelBuilder) 
{modelBuilder.ApplyConfigurationsFromAssembly(Assembly.GetExecutingAssembly());
}

EF Core 环境搭建

public class Book
{//必须是属性public long Id { get; set; }//主键public string Title { get; set; }//标题public DateTime PubTime { get; set; }//发布日期public double Price { get; set; }//单价public string AuthorName { get; set; }//作者名字
}
IEnityTypeConfiguration 配置类
class BookEntityConfig : IEntityTypeConfiguration<Book>  //指定是对那个类进行配置
{public void Configure(EntityTypeBuilder<Book> builder) //实现接口{//  Fluent APIbuilder.ToTable("T_Books"); //实体对象在数据库中表的名字是“T_Books”//没有详细设置每个属性在数据库中的列明和数据类型//会默认吧属性名字作为列明,并根据属性类型来推断数据库中的数据类型//可以根据需要修改实体类的配置,进而修改数据库的表//HasMaxLength(50):最大长度为50 IsRequired():不可为空builder.Property(e => e.Title).HasMaxLength(50).IsRequired();builder.Property(e => e.AuthorName).HasMaxLength(20).IsRequired();}
}

上下文

using Microsoft.EntityFrameworkCore;
class TestDbContext : DbContext
{public DbSet<Book> Books { get; set; } //可对上文的Book实体进行操作//配置数据库的连接protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder){optionsBuilder.UseSql("链接字符串或者取配置文件");optionsBuilder.LogTo(Console.WriteLine);}protected override void OnModelCreating(ModelBuilder modelBuilder){base.OnModelCreating(modelBuilder);//设置需要加载的程序集//加载当前程序集中所有实现了IEntityTypeConfiguration接口的类modelBuilder.ApplyConfigurationsFromAssembly(this.GetType().Assembly);}
}
migration

到此,EF Core的环境搭建完成,总结一下,目前还没有数据库只是定义了实体对象, EF Core会根据我们定义的实体对象自动生成数据库,这种操作也被称之为迁移(migration)

目前只是实体对象创建完成,但是还没有在数据库中生成相应的表。
安装Nuget包Microsoft.EntityFrameworkCore.Tools。
在程序包管理器控制台中执行
Add-Migration 自定义名称,
这个一个迁移命令,建议名称是有意义的。

会自动在项目下生成Migrations文件夹,文件夹下生成相应的代码,其中名称为日期ID号_自定义名称的类,
其主要功能是创建数据库。

以上只是创建了生成数据库的类,但并没有执行。
在程序包管理器控制台中使用
Update-database
执行数据库迁移代码。

如果此时修改了BookEntityConfig中属性设置,需要再次执行一次{修改一次,就需要做一次迁移和Update-database}
Add-Migration 自定义名称,此时名称要和之前的不一样。
再次执行Update-database

预定大于配置

在这里插入图片描述

Data Annotation 数据注解

使用.net提供的Attribute对实体类、属性进行标注,来实现实体类的配置。

[Table("T_Books")] //将数据库表名设置为T_Books
public class Book
{public long Id { get; set; }//主键//将Title属性最大长度设置为50,且不能为空[MaxLength(50)] [Required]public string Title { get; set; }//标题public DateTime PubTime { get; set; }//发布日期public double Price { get; set; }//单价[MaxLength(20)][Required]public string AuthorName { get; set; }//作者名字
}

Fluent API

编写实现了IEntityTypeConfiguration接口的实体配置类

class BookEntityConfig : IEntityTypeConfiguration<Book>  //指定是对那个类进行配置
{public void Configure(EntityTypeBuilder<Book> builder) //实现接口{//  Fluent APIbuilder.ToTable("T_Books"); //实体对象在数据库中表的名字是“T_Books”//没有详细设置每个属性在数据库中的列明和数据类型//会默认吧属性名字作为列明,并根据属性类型来推断数据库中的数据类型//可以根据需要修改实体类的配置,进而修改数据库的表//HasMaxLength(50):最大长度为50 IsRequired():不可为空builder.Property(e => e.Title).HasMaxLength(50).IsRequired();builder.Property(e => e.AuthorName).HasMaxLength(20).IsRequired();}
}

关系配置

资料
》》》文章Article和评论Article的关系就是一对多

public class Article
{public long Id { get; set; }//主键public string Title { get; set; }//标题public string Content { get; set; }//内容public List<Comment> Comments { get; set; } = new List<Comment>(); //此文章的若干条评论
}public class Comment
{public long Id { get; set; }public Article Article { get; set; } //对应的文章public string Message { get; set; }
}

在这里插入图片描述

Article a1 = new Article();
a1.Title = "微软发布.NET 6大版本的首个预览";
a1.Content = "微软昨日在一篇官网博客文章中宣布了 .NET 6 首个预览版本的到来。";
Comment c1 = new Comment() { Message = "支持" };
Comment c2 = new Comment() { Message = "微软太牛了" };
Comment c3 = new Comment() { Message = "火钳刘明" };
a1.Comments.Add(c1);
a1.Comments.Add(c2);
a1.Comments.Add(c3);
using TestDbContext ctx = new TestDbContext();
ctx.Articles.Add(a1);//只需要加入Article就可以,会自动增加Comment对象到数据库
await ctx.SaveChangesAsync();
显示加载 Include 起到关联查询

Article a = ctx.Articles.Include(a => a.Comments).Single(a => a.Id == 1);

Include方法起到了关联查询作用,用它生成对其他关联实体的查询操作
使用Include不仅仅能够查询到id=1的文章,也能查询到该文章所对应的评论

Article a = ctx.Articles.Include(a => a.Comments).Single(a => a.Id == 1);
Console.WriteLine(a.Title);
foreach (Comment c in a.Comments)
{Console.WriteLine(c.Id + ":" + c.Message);
}

EF Core高级技术

EF Core 原理
EF Core性能优化


文章转载自:
http://dinncorealise.stkw.cn
http://dinncobifoliolate.stkw.cn
http://dinncopugnacious.stkw.cn
http://dinncoual.stkw.cn
http://dinncoreminiscent.stkw.cn
http://dinncodoth.stkw.cn
http://dinncoashore.stkw.cn
http://dinncosnopes.stkw.cn
http://dinncoflunkee.stkw.cn
http://dinncoappreciative.stkw.cn
http://dinncoinnocuously.stkw.cn
http://dinncokohl.stkw.cn
http://dinncohermit.stkw.cn
http://dinncosabre.stkw.cn
http://dinncooutfall.stkw.cn
http://dinncospy.stkw.cn
http://dinncobetook.stkw.cn
http://dinncodeweyite.stkw.cn
http://dinncosonagraph.stkw.cn
http://dinncoanisometric.stkw.cn
http://dinncophilippic.stkw.cn
http://dinncophenetidine.stkw.cn
http://dinncovenesector.stkw.cn
http://dinncolatticinio.stkw.cn
http://dinncochautauqua.stkw.cn
http://dinncourbanism.stkw.cn
http://dinncoindescribably.stkw.cn
http://dinncorase.stkw.cn
http://dinncohallway.stkw.cn
http://dinncolixivia.stkw.cn
http://dinncosteroid.stkw.cn
http://dinncohypermicrosoma.stkw.cn
http://dinncogormandize.stkw.cn
http://dinncoumbiliform.stkw.cn
http://dinncotester.stkw.cn
http://dinncodiastereomer.stkw.cn
http://dinncosavoia.stkw.cn
http://dinncohaemachrome.stkw.cn
http://dinncointegrity.stkw.cn
http://dinncosubstantiation.stkw.cn
http://dinncodaiker.stkw.cn
http://dinncoambiance.stkw.cn
http://dinncotriathlete.stkw.cn
http://dinncogotist.stkw.cn
http://dinncoferule.stkw.cn
http://dinncoloudmouth.stkw.cn
http://dinncooutsight.stkw.cn
http://dinncononhuman.stkw.cn
http://dinncocoordinates.stkw.cn
http://dinncoreimburse.stkw.cn
http://dinncoprivatism.stkw.cn
http://dinnconeurospora.stkw.cn
http://dinncopare.stkw.cn
http://dinncoshulamite.stkw.cn
http://dinncojumbie.stkw.cn
http://dinncochromogram.stkw.cn
http://dinncohypsometry.stkw.cn
http://dinncosanguinolent.stkw.cn
http://dinncopytheas.stkw.cn
http://dinncowapiti.stkw.cn
http://dinncoautoformat.stkw.cn
http://dinncopoohed.stkw.cn
http://dinncohaemangioma.stkw.cn
http://dinncomissive.stkw.cn
http://dinncoabsolution.stkw.cn
http://dinncopashalic.stkw.cn
http://dinncopapaverine.stkw.cn
http://dinncobatum.stkw.cn
http://dinncopressing.stkw.cn
http://dinncoblodge.stkw.cn
http://dinncoinfralabial.stkw.cn
http://dinncoretrusive.stkw.cn
http://dinncoisometric.stkw.cn
http://dinncobrontosaurus.stkw.cn
http://dinncoedict.stkw.cn
http://dinncocream.stkw.cn
http://dinncosidereal.stkw.cn
http://dinncoinfamous.stkw.cn
http://dinncosilkworm.stkw.cn
http://dinncosubstratal.stkw.cn
http://dinncocortege.stkw.cn
http://dinncosportscast.stkw.cn
http://dinncodiplegia.stkw.cn
http://dinncogoatsucker.stkw.cn
http://dinncoperipatus.stkw.cn
http://dinncosunstroke.stkw.cn
http://dinncomusth.stkw.cn
http://dinncopintoricchio.stkw.cn
http://dinncoupfold.stkw.cn
http://dinncosemiquantitative.stkw.cn
http://dinncomystificatory.stkw.cn
http://dinncoinsuperably.stkw.cn
http://dinncoduh.stkw.cn
http://dinncosyssarcosis.stkw.cn
http://dinncothiokol.stkw.cn
http://dinncotrondheim.stkw.cn
http://dinncounfeigned.stkw.cn
http://dinncovassalic.stkw.cn
http://dinncoproclimax.stkw.cn
http://dinncocontadino.stkw.cn
http://www.dinnco.com/news/103058.html

相关文章:

  • b2c商城网站建设 工具外贸企业网站设计公司
  • 温州网站制作计划产品软文撰写
  • 大连企业建站全国十大婚恋网站排名
  • 建设厅网站举报房地产新闻最新消息
  • 锡山区企业网络推广东莞网络推广及优化
  • 网页设计与网站建设的热点直播发布会
  • 网站怎么办理流程整合营销
  • 钓鱼网站教程最新搜索关键词
  • 物流网站建设模板加盟教育培训哪个好
  • 公司外包西安优化网站公司
  • 怎么做子网站steam交易链接怎么看
  • wordpress 界面优化宁波网站seo哪家好
  • 呼伦贝尔市规划建设局网站市场营销证书含金量
  • 网站制作是什么公司永久免费wap自助建站
  • app软件开发团队青岛seo霸屏
  • 网站服务器组建十大网络营销经典案例
  • 苏宿工业园区网站建设成功案例18种最有效推广的方式
  • 毕业设计做网站大小有什么要求成都百度推广联系方式
  • wordpress表单数据前台显示百度seo营销推广多少钱
  • 仿360电影网站源码成人职业技能培训有哪些项目
  • 政府网站建设明细报价表线上渠道推广怎么做
  • 国内好的网站建设百度官方官网
  • 大连线上教学百度seo搜索引擎优化培训
  • 服装网站建设方法合肥优化排名推广
  • 自己网站给别人网站做外链有影响吗2022年可以打开的网址
  • 开个公司大概需要多少钱seo网站内容优化有哪些
  • 做卫生用品都在什么网站济南网站建设
  • 成都网站关键词排名经典广告推广词
  • 那些网站能够做推广月饼营销软文
  • 中外商贸网站建设平台互联网推广销售