博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EF--DB First
阅读量:6803 次
发布时间:2019-06-26

本文共 2811 字,大约阅读时间需要 9 分钟。

  DB First先有数据库,根据数据库生成Model实体对象。

1、新建数据库表,Poet,Poem,Meter.关系如下:

  

 

  建表语句

create table Poet(    PoetId int identity(1,1) primary key,    FirstName varchar(20),    MiddleName varchar(20),    LastName varchar(20))create table Meter(    MeterId int identity(1,1) primary key,    MeterName varchar(50) )create table Poem(    poemId int identity(1,1) primary key,    PoetId int,    MeterId int,    Title varchar(50),    foreign key(PoetId) references poet(Poetid),    foreign key(MeterId) references Meter(MeterId))create view vwLibraryasselect  poet.FirstName,poet.MiddleName,poet.LastName,poem.Title,Meter.MeterName from Meter ,poet,Poem where Meter.MeterId=poem.MeterId and poem.PoetId=poet.PoetId
View Code

2、新建控制台项目DBFirstDemo,确定。

3、点击选中项目添加-->新建-->选择数据模板-->ADO.NET实体数据模型,确定。

  

4、实体模型向导选择从数据库生成,下一步。

  

5、选择或者新建链接,连接选择后继续下一步。

  

6、选择框架版本,本机选择6.0

  

7、选择数据库对象,选择表和视图。并勾选下方复选框。

  

8、生成实体图上展示如下:

  

9、使用实体,修改Main方法如下:

  

static void Main(string[] args)        {            using (var context = new EF6RecipesEntities())            {                var poet = new poet { FirstName = "John", LastName = "Milton" };                var poem = new Poem { Title = "Paradis Lost" };                var meter = new Meter { MeterName = "Iambic Pentameter" };                poem.poet = poet;                poem.Meter = meter;                context.Poems.Add(poem);                poem = new Poem { Title="Paradis Regained" };                poem.poet = poet;                poem.Meter = meter;                context.Poems.Add(poem);                poet = new poet { FirstName = "Lewis", LastName = "Carroll" };                poem = new Poem { Title = "The Hunting of the Shark" };                meter = new Meter { MeterName = "Anapestic Tetrameter" };                poem.Meter = meter;                poem.poet = poet;                context.Poems.Add(poem);                poet = new poet { FirstName = "Lord", LastName = "Byron" };                poem = new Poem { Title = "Don Juan" };                poem.Meter = meter;                poem.poet = poet;                context.Poems.Add(poem);                context.SaveChanges();                Console.WriteLine("----------------读取Poet----------------");                var poets = context.poets;                foreach (var poettemp in poets)                {                    Console.WriteLine("{
0}{
1}", poettemp.FirstName, poettemp.LastName); foreach (var poemtemp in poet.Poems) { Console.WriteLine("\t{
0} ({
1})", poemtemp.Title, poemtemp.Meter.MeterName); } } Console.ReadKey(); } }
View Code

10、执行结果

  

 

总结:DBFirst是根据现有数据库生成Model实体,并对实体进行后续操作,适用旧项目改造。

 

转载于:https://www.cnblogs.com/bro-ma/p/7203662.html

你可能感兴趣的文章
java总结
查看>>
man命令--Linux命令应用大词典729个命令解读
查看>>
SCVMM 2007 R2 自助门启无法打开
查看>>
Ubuntu下彻底卸载mysql 。 ubuntu11.04自带版本较旧,需要卸载再安装新版
查看>>
Web开发模式【实例篇】MVC--迈向标准开发
查看>>
查看binlog文件的2种方式
查看>>
axis2 service archiver erroe class not found
查看>>
新人程序员如何脱颖而出
查看>>
网络工程师真的也需要好好学习linux系统
查看>>
Entangle 2.0 “Sodium”正式发布
查看>>
Redis之父表示ARM服务器没戏!
查看>>
java调用cmd命令并捕获执行结果字符串的代码
查看>>
Eclipse中android sdk升级ADT版本过低解决办法
查看>>
MDT 2013 从入门到精通之无法分析或处理pass[specialize]文件
查看>>
桌面支持--512-Rear chassis fan not detected
查看>>
Django 开源相册组件介绍 django-photologue
查看>>
IntelliJ IDEA 14 创建Web项目
查看>>
Redis server命令
查看>>
PeerConnection
查看>>
关于ext-js 中的自定义校验
查看>>