ModelFirst:EF框架自动根据实体模型设计器(*.edmx)生成数据库、数据层和model。
项目--添加--新建项--数据--ADO.NET实体数据模型--空模型--右击--新增--实体--实体名称(Use)、一定要选择创建主键ID--点击模型主键ID(Identity(自增)、为Null(false)、实体键(True),三个属性表示主键)--模型头部右击--新增--标量属性--UseName--点击UserName设置类型、约束(String类型要指定最大长度)--保存--覆盖--会在.tt文件下生成对应的实体类--空白处右击--新增--关联--选择实体、对应关系(一定要勾选导航属性)--空白处右击--根据模型生成数据库--新建连接--选择数据库(空的数据库)--确定--下一步--完成--覆盖--利用SQL脚本文件生成数据库(VS中打开.sql文件,空白处右击执行)
WebForm2.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
//添加客户,及其订单
protected void Button1_Click(object sender, EventArgs e)
{
Model2Container db = new Model2Container(); //Model2.Context.cs中的类。(上下文类,都是通过该类实现和数据库的交互)
Customer customer = new Customer() {CustomerName="zhangsan",CustomerPwd="123", SubTime=DateTime.Now }; //可以不指定导航属性OrderInfo的值。
OrderInfo orderInfo1 = new OrderInfo() { ID = Guid.NewGuid(), OrderNum = "10001", CreateDateTime = DateTime.Now,Customer=customer }; //指定导航属性