前言

Model First我们称之为“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在Visual Studio中我们通过设计对于的数据模型来生成数据库和数据类。

简单演示使用过程

第一步:首先还是添加一个简单的控制台应用程序,然后在此项目上添加一个 ADO.NET 实体数据模型。

第二步:选择空模型。

第三步:在模型设计视图中,添加新实体

点击确定后

第四步:在Order实体上在添加两个属性,Customer(订单所属客户)类型为string,OrderDate(订单下单日期)类型为DateTime

字段类型设置,就在当前字段右键===>>>属性然后找到类型设置即可。

第五步:再添加一个实体OrderDetail订单详细,Product产品

第六步:我们添加二者之间的关系,“Order”和“OrderDetail”是一对多的关系,“Order”可以通过“OrderDetails”属性访问“OrderDetail”实体,“OrderDetail”可以通过“Order”属性访问“Order”实体,并且添加了一个外键约束到“OrderDetail”中

点击确定,添加之后的关系为

到目前为止Model First中的Model已经创建结束,下面就需要生成到数据库了,在模型设计视图空白处选择“根据模型生成到数据库…”:

并且确保数据库中已经存在一个空白数据库

第七步:选择并添加数据链接

然后点击下一步后,会看到如下界面

然后再点击完成即可,看到生成的Sql脚本。

再然后,右键Sql脚本,点击执行

最终数据库的此数据库多了两个表

简单代码测试

    class Program
{
static void Main(string[] args)
{
using (var db = new ModelTestContainer())
{
Order Order = new Order();
Order.Customer = "aehyok";
Order.OrderDate = DateTime.Now;
db.Orders.Add(Order);
db.SaveChanges(); IQueryable<Order> Orders = from Orderes in db.Orders
select Orderes;
foreach (Order O in Orders)
{
Console.WriteLine("OrderID is {0},Customer is {1}", O.ID, O.Customer);
}
}
Console.ReadLine();
}
}

运行效果为

运行了两次,所以添加两条数据。

注意:如果我们的模型发生改变,只需要在模型设计视图修改模型,让后保存此时实体类就会相应改变,然后选择“从模型生成到数据库”重新执行生成的脚本即可。

最新文章

  1. text-align=center 失效原因
  2. mysql延迟查询, 覆盖索引使用例子
  3. AT指令获取基站信息
  4. PHP获取某年第几周的开始日期和结束日期
  5. 安装xampp后,遇到的各种问题
  6. ios十进制、十六进制字符串,byte,data等之间的转换
  7. who am i
  8. 【亲测】appium_v1.4.16版本自动化适配android7.0系统
  9. 21. leetcode 492
  10. node.js的generic-pool与mysql结合,mysql连接池
  11. 华为oj之字符串分割
  12. 【Python】 Python3 环境搭建
  13. Halcon 彩色图片通道分割处理
  14. struts2在配置文件与JSP中用OGNL获取Action属性
  15. js - 移动端的超出滚动功能,附带滚动条,可解决弹层中滚动穿透问题。
  16. opencv学习之路(12)、图像滤波
  17. Anibei前端基础学习
  18. pandas的set_index和reset_index方法
  19. eval、exec、execfile
  20. aspnetcore 2.1 发布到树莓派3linux的艰辛路程

热门文章

  1. 20145222黄亚奇《Java程序设计》第3周学习总结
  2. 如何申请TexturePacker
  3. ModernUI教程:使用预定义的页面布局
  4. 2、面向对象以及winform的简单运用(面向对象的四大基本特性)
  5. 使用Git进行代码管理心得
  6. git 命令的学习
  7. grunt安装_
  8. WeakHashMap和HashMap的区别
  9. 【CodeForces 604B】F - 一般水的题1-More Cowbe
  10. 【HDU 2604】Queuing