关于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. linux系统寻找僵尸进程

    1. 用top命令来查看服务器当前是否有僵尸进程. 2. 用ps和grep命令寻找僵尸进程 $ ps -A -ostat, pid, ppid, cmd | grep -e '^[Zz]' 命令解释: ...

  2. oracle 累加功能,累加百分比

    最近做数据分析,需要用到累加功能,发现强大的oracle还真有,用over(order by field) 例子: 数据表中最后一列就是累加的效果 累加sql: select t.acc_pedal_ ...

  3. sublime使用技巧(2)-- 实用插件推荐【持续更新】

    1.Auto semicolon 在括号内输入分号,会自动把光标移到行尾然后再输入分号. 2.DocBlockr 补全注析格式,例如在函数上面输入/** + Enter,就会自动补全函数的注析说明. ...

  4. RabbitMQ集群安装配置+HAproxy+Keepalived高可用

    RabbitMQ集群安装配置+HAproxy+Keepalived高可用 转自:https://www.linuxidc.com/Linux/2016-10/136492.htm rabbitmq 集 ...

  5. Android Studio gradle 文件中 ${supportLibVersion} 用法

    一般我们在项目中的gradle会添加如下库文件 dependencies { compile 'com.android.support:appcompat-v7:23.1.0' compile 'co ...

  6. share(发包方面)

    share(发包方面) 接收所有map发过来的包,这个是GS线程驱动的 { for (;;) { //... if(!itMap.second->RecvData(Pkt)) break; if ...

  7. GitHub从无到有

    一步一步教你如何在GitHub上上传自己的项目 2018年07月04日 09:23:40 夏雨薇安 阅读数:22764   首先你得注册一个自己的GitHub账号,注册网址:https://githu ...

  8. 【BZOJ4184】shallot 线段树+vector+线性基

    [BZOJ4184]shallot Description 小苗去市场上买了一捆小葱苗,她突然一时兴起,于是她在每颗小葱苗上写上一个数字,然后把小葱叫过来玩游戏. 每个时刻她会给小葱一颗小葱苗或者是从 ...

  9. IaaS,PaaS,Saas 云服务的介绍

    云服务只是一个统称,可以分成三大类. IaaS:基础设施服务,Infrastructure-as-a-service PaaS:平台服务,Platform-as-a-service SaaS:软件服务 ...

  10. Android Dev Tips

    Ref:Android Service与Activity之间通信的几种方式 Ref:基础总结篇之五:BroadcastReceiver应用详解 Ref:Android Activity和Intent机 ...