关于Entity Framework  数据模型 的开发有三种模式:1.引用数据库方式;2.在VS中新建EF空模型Model 方式;3.Code 方式

Entity Framework  数据模型  引用"引用数据库方式"进行开发创建的使用,具体如下:

开发环境:VS2012

数据库:SQL Server 2008

Entity Framework  版本:6.12

1.新建数据库

在数据库中新建数据库,并创建数据表,以下截图只供参考:

2.新建项目

在VS中新建一个控制台应用程序 Future.LifeWillBetter.DAL.ForDBConsoleApplication

3.新建数据模型

右击 Future.LifeWillBetter.DAL.ForDBConsoleApplication-》  添加—》新建项

点击”新建连接“,这是一个连接数据库的;然后找到刚才新建的数据,并选中如下图

点击确定,完成之后,直接下一步.

直接下一步.

,当然也可以选择视图,存储过程,然后点击完成。

然后会生成一个FutureLifeWillBetterDALForDBModel.edmx数据模型,如图:

4.数据模型扩展使用

在开发中不可能不会新加数据表或者存储过程以及视图,所以要知道怎么扩展!

①我在数据库Future.LifeWillBetter中,新建一张表

CREATE TABLE [dbo].[T_Comments](
[Id] [int] IDENTITY(,) NOT NULL,
[ArticleId] [int] NULL,
[AuthorName] [nvarchar]() NULL,
[Contents] [nvarchar](max) NULL,
[PubDate] [datetime] NULL
) GO

这样的话,我的数据表就新建成功了,下一步就是更新我们的FutureLifeWillBetterDALForDBModel.edmx数据模型

双击打开FutureLifeWillBetterDALForDBModel.edmx 在空白处右击,从”数据库更新模型“

点击确定,会出现一个刚开始选择数据表、视图、存储过程的窗体,继续...

我全部勾选,然后点击完成,点击完成之后记得保存数据模型文件即:FutureLifeWillBetterDALForDBModel.edmx;这样我们就能在FutureLifeWillBetterDALForDBModel.edmx这个数据模型的FutureLifeWillBetterDALForDBModel.tt看到一个T_Comments实体类;

这是我们新增数据表,当然如果我们删除数据表也可以用同样的方式,将数据模型中的实体删除。

5.数据模型,文件介绍

①App.config :配置文件,此文件已包含实体数据的数据库链接等基本信息

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<connectionStrings>
<add name="Entities" connectionString="metadata=res://*/FutureLifeWillBetterDALForDBModel.csdl|res://*/FutureLifeWillBetterDALForDBModel.ssdl|res://*/FutureLifeWillBetterDALForDBModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=Future.LifeWillBetter;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>

②FutureLifeWillBetterDALForDBModel.Context.cs:实体数据模型的上下文(FutureLifeWillBetterDALForDBModel.Context.tt下)
③FutureLifeWillBetterDALForDBModel.tt:这个下面包含了具体的实体(也就是以数据库表为单位的类)

再次看下目录结构,如图:

完!

Entity Framework 学习笔记(一)之数据模型 数据库的更多相关文章

  1. Entity Framework 学习笔记(2)

    上期回顾:Entity Framework 学习笔记(1) Entity Framework最主要的东西,就是自己创建的.继承于DbContext的类: /// <summary> /// ...

  2. Entity Framework学习笔记

    原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总   之前的小项目做完了,到了总结经验和 ...

  3. ADO.NET Entity Framework学习笔记(3)ObjectContext

    ADO.NET Entity Framework学习笔记(3)ObjectContext对象[转]   说明 ObjectContext提供了管理数据的功能 Context操作数据 AddObject ...

  4. Entity Framework 学习笔记(二)之数据模型 Model 使用过程

    Entity Framework  数据模型 Model 创建的使用: 开发环境:VS2012 数据库:SQL Server 2008 Entity Framework  版本:6.12 下面是新建的 ...

  5. Entity Framework学习笔记(一)

    请注明转载地址:http://www.cnblogs.com/arhat 哈哈!老魏回来了,4月份的内容开始更新了,由于3月份时间都在做项目,没有时间写了,那么4月份老魏会尽可能的多写点东西的.那么4 ...

  6. Entity Framework 学习笔记

    1.自定义数据库链接字符串上下文 public class PetDbContext : DbContext { public PetDbContext() : base("name=Dem ...

  7. Entity Framework学习笔记——错误汇总

    之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇 ...

  8. Entity Framework学习笔记——记一个错误解决方式及思路

    继续之前设定的学习目标前,先来一篇小小的外篇.按照第一篇里的配置方式配置好的工程前两天还能正常工作,昨天却突然无法通过Add-Migration命令进行数据库的升级.错误信息如下: System.Da ...

  9. Entity Framework学习笔记——配置EF

    初次使用Entity Framework(以下简称EF),为了避免很快忘记,决定开日志记录学习过程和遇到的问题.因为项目比较小,只会用到EF的一些基本功能,因此先在此处制定一个学习目标:1. 配置EF ...

随机推荐

  1. LVM卷组命令

    一般维护命令  #vgscan //检測系统中全部磁盘  #vgck [卷组名] //用于检查卷组中卷组描写叙述区域信息的一致性.  #vgdisplay [卷组名] //显示卷组的属性信息  #vg ...

  2. 软件project--谈项目开发

    前段时间一直忙自考.着急赶项目进度,如今最终有时间回想这段时间的学习,突然发现自己已有半个月没有沉淀. 今天早上醒来.灵感如泉水般涌出,挡都挡不住.所以早上一到机房,便迫不及待的想大家分享灵感,希望大 ...

  3. [译]GLUT教程 - 位图和正交投影视图

    Lighthouse3d.com >> GLUT Tutorial >> Fonts >> Bitmap Fonts and Orthogonal Projecti ...

  4. 精准 iOS 内存泄露检测工具

    MLeaksFinder:精准 iOS 内存泄露检测工具 发表于 2016-02-22   |   zepo   |   23 Comments 背景 平常我们都会用 Instrument 的 Lea ...

  5. Nginx+tomcat集群中,session的共享

    nginx,tomcat集群后多个session分配到同一个应用 单节点低负荷的情况下,我们通常把一个WEB应用打成WAR包放WEB应用服务器,如TOMCAT下运行就行了(如图1).但随着用户量的增加 ...

  6. 2016 acm香港网络赛 F题. Crazy Driver(水题)

    原题网址:https://open.kattis.com/problems/driver Crazy Driver In the Linear City, there are N gates arra ...

  7. 自定义验证----required属性

    1,required属性 - 表示字段不能为空(注意:只有用户单击“提交”按钮提交表单的时候,浏览器才会执行验证.目前HTML5不支持指定验证的时间,而且验证消息的样式和内容各个浏览器不大一样,不能修 ...

  8. Latex中參考文献排序

    \bibliographystyle{unsrt}:依照引用的先后排序 \bibliographystyle{plain}:按字母的顺序排列,比較次序为作者.年度和标题.当中作者中姓氏字母优先. 关于 ...

  9. Muduo网络库源代码分析(四)EventLoopThread和EventLoopThreadPool的封装

    muduo的并发模型为one loop per thread+ threadpool.为了方便使用,muduo封装了EventLoop和Thread为EventLoopThread,为了方便使用线程池 ...

  10. 求最小正整数x,A^x=1(mod M)求阶模板

    整数的阶:设a和n是互素的正整数,使得a^x=1(mod n)成立的最小的正整数x称为a模n的阶 //求阶模板:A^x=1(mod M),调用GetJie(A,M) //输入:10^10>A,M ...