ADO.NET实体数据模型
本文说一下如何使用ADO.NET实体数据模型,并解释一些概念。
1,首先你要建立一个数据库。比如我在SQL2005上面建立了数据库student,包含两个表:
2,然后再项目上添加新建项:
3,打开新建项,选择如下:有时可能没有这个选择项,找个完整的安装包重新安装。
保存的名字我定义为studentEntitis.edmx
4,然后安装下面的向导依次进行:
(1)从数据库生成
(2)下一步:点击 新建连接
(3)指定服务器名(就是你的电脑名)和数据库名(这里是新建的数据库student)
(4)选择所有的表,单击完成就可以看到生成的数据模型了。也就是我列出的第一张图片。
5,首先我们看一下生成的文件:studentEntitis.Designer.cs,如下图:
这个文件包括两部分:上下文和实体。
(1)我们首先将上下文展开,如下图:
我们可以看到类studentEntities是继承自ObjectContext的,然后这个类里面有ObjectSet属性
ObjectContext就是数据库在程序中生成的对象上下文,这里面包含了数据库中的表,在程序中
就是ObjectSet,我展开ObjectSet如下图:
也就是ObjectSet保存的就是数据库中的表对应的对象集。
ObjectContext可以叫对象上下文,也可以叫实体上下文集。
ObjectSet可以叫对象集,也可以叫实体集。
有关ObjectContext的详细内容可以查看下面的文章:
http://www.cnblogs.com/wyqlijin/archive/2011/03/02/1968691.html
(2)然后我们再将实体展开看看:
我们可以看到实体对应多个类,这些类其实就是数据库表生成的实体类,这些类当中包含所有的
数据库表中的字段。
另外,所有的实体类都是继承自 EntityObject,也就是实体对象,所以我们可以把这些类叫做
实体类。
ADO.NET实体数据模型的更多相关文章
- Visual 2015创建新项,缺少ADO.NET 实体数据模型的解决方法
现在的某度查资料真的很麻烦,突然我自身的VS2015创建EF的时候找不到 ADO.NET 实体数据模型,但是使用CodeFrist是可以生成数据表的.所有特别郁闷. 打开界面如下 某度半天,都没有查出 ...
- ADO.NET实体数据模型使用探索1
今天研究了下ADO.NET实体数据模型,想写个关于两张有外键关系的增改删查,以此来稍增加点难度. 编程环境:vs2010+sql2005 1.在SQL2005下建立三张表:学生信息表Student(S ...
- Model First:创建实体数据模型(ADO.NET 实体数据模型)
Microsoft Entity Framework是一个对象关系映射工具(Object Relational Mapping ,O/RM)工具.它可以让你从一个数据库自动地生成数据接入层.实体框架免 ...
- vs212创建mvc3项目,添加ADO.NET实体数据模型时产生 XXXX.Desiger.cs 文件为空
vs212创建mvc3项目,发现添加ADO.NET实体数据模型时,产生StoreDB.Desiger.cs文件为空 产生StoreDB.Desiger.cs文件为空 原因是,在vs2012中,添加AD ...
- Visual Studio2017中如何让Entity Framework工具【ADO.NET实体数据模型】支持MYSQL数据源
熟悉Entity Framework应该对以下图片不陌生,他就是ADO.NET实体数据模型向导:可以将数据库的表自动生成模型类,或者创建Code First的模型文件. 但是这个模型向导默认只显示微软 ...
- 《MVC+EF》——用DBFirst创建ADO.NET实体数据模型和对象关系映射
转载于:http://blog.csdn.net/zhoukun1008/article/details/50528145 现在越来越喜欢MVC了,不光是因为ITOO中用到了他,而是因为它里面包含了很 ...
- ADO.NET实体数据模型中关于数据库字段默认值的处理
无论是Visual Studio 2010或者2013内置的ADO.NET实体数据模型都有一个小问题:数据库中有些字段已设置了默认值,但ADO.NET实体数据模型工具并不会自动进行设置. 这时需要手工 ...
- Visual Studio2017中如何让ADO.NET实体数据模型[EntityFramework]支持MariaDB&MySQL数据源
近期由于工作需要,需要重新修改设计系统的ADO.NET实体数据模型.edmx文件中间,在完成实际中途遇到一些实际使用问题,特此记录. 1. Visual Studio 2017 无法以实体设计模式打开 ...
- Ado.Net实体数据模型EF,如何在代码中添加数据库连接密码
在创建EF模型的时候,VS2013提示说“在连接字符串中存储敏感数据可能有安全风险”,于是我选择了在代码中添加,可是如何通过代码添加呢? 我在网上百度了下,没有人说的清楚直观. 假设我们创建了一个名字 ...
随机推荐
- Python全栈开发:生成随机数
#!/usr/bin/env python # -*- coding;utf-8 -*- import random def foo(args): """ :param ...
- mysql 存中文失败问题
在向数据库存中文时报错: 将中文字段的字符集改为utf8即可: 成功截图:
- 19-11-14-Finally
如果这是世界末日的前一晚, 这是我的回答. #include <bits/stdc++.h> using namespace std; int main(){ cout<<&q ...
- Django 异步任务、定时任务Celery
将任务分配给其他的进程去运行,django的主进程只负责发起任务,而执行任务的不在使用django的主进程.Python有一个很棒的异步任务框架,叫做celery. Django为了让开发者开发更加方 ...
- python3-常用模块之openpyxl(2)封装
简单封装了下openpyxl,仅供参考,openpyxl版本2.6.2#操作存在的文件from openpyxl import Workbookfrom openpyxl import load_wo ...
- 基于baseline和stochastic gradient descent的个性化推荐系统
文章主要介绍的是koren 08年发的论文[1], 2.1 部分内容(其余部分会陆续补充上来). koren论文中用到netflix 数据集, 过于大, 在普通的pc机上运行时间很长很长.考虑到写文 ...
- error C2440 “static_cast” 无法从“void (__thiscall C* )(void)...
1.VC6中,说可以把函数在头文件中定义为:afx_msg void OnProgress()这样 但是在VS2005及以上,要求很严格,必须函数返回值为LRESULT类型,所以在VS2005及以上, ...
- AlexNet结构图详解
- Luogu P4782 【模板】2-SAT 问题(2-SAT)
P4782 [模板]2-SAT 问题 题意 题目背景 \(2-SAT\)问题模板 题目描述 有\(n\)个布尔变量\(x_1\sim x_n\),另有\(m\)个需要满足的条件,每个条件的形式都是&q ...
- Leetcode145. Binary Tree Postorder Traversal二叉树的后序遍历
给定一个二叉树,返回它的 后序 遍历. 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 递归: class Solution { public: vector<int> res; ve ...