博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Entity Framework 4 in Action读书笔记——第二章:开始Entity Framework之旅(3)
阅读量:7119 次
发布时间:2019-06-28

本文共 1303 字,大约阅读时间需要 4 分钟。

这篇我们解决两个问题,一是组织产生的代码,而是完成我们的程序,实现基本的功能。

组织产生的代码

默认情况下,设计器产生一个文件,把所有代码都放到这一个文件中。这个文件以设计器文件的名字命名,扩展名为.vb 或 .cs,根据语言的不同。例如,model.edmx设计器文件创建了一个model.edmx.vb或者model.edmx.cs。如果查看一下代码,就会发现很乱。所有的类都放在一个文件中,还有很多属性和方法。更糟糕的是,类都继承自EntityObject,类之间的关系使用EntityCollection<T>和EntityReference<T>表示。下面就介绍一种有效组织代码的方法:the plain old CLR object(POCO)法。

1.在VS中,选择Tools > Extension Manager。

2.在Extension Manager窗口中,选择左边Online Gallery选项卡,在右上角的搜索框中输入POCO,回车。如下图:

3.因为我已经安装了,所以右上角有个绿色的标志,如果没有安装直接点击Download安装即可。

安装完成后,按照下面的步骤就可以优化代码了。

1.在设计器中右击,选择Add Code Generation Item,选择ADO.NET POCO Entity Generator项,在Name文本框中输入Entities.tt,点击OK,两个文件就添加到了项目中:Entities.tt和Entities.Context.tt。

2.选择这两个文件,右击选择Run Custom Tool,就完成了代码的优化。

3.在设计器中右击,选择Properties,将Code Generation Strategy设置为None。此时在Model.Designer.cs中只有下面一些提示信息:

提示信息中提到,如果想使用默认的代码产生方式,就把Code Generation Strategy设置为Default。

实现程序的基本功

1.将OrderIT.Model中的App.Config文件的 <add name="OrderITEntities" connectionString="'"/>节点内容复制,在OrderIT.Web的Web.Config中的<connectionStrings> </connectionStrings>节点中粘贴。

2.添加Controller。在弹出的Add Controller对话框中按下图填写。

3.点击Add,我们的程序就可以跑起来了。

写在最后的话

在做这个例子的时候,由于之前设计模型出了一点小问题,我重新设计的,可是忘了设置Company实体的Abstract属性为True了,花费了很多时间才找到原因,我在上一篇中特别标出来了。上面的例子其实并不恰当,因为后边所有的知识点还要详细讲解,所以就不在这里用太多的时间了。

有需要源码的,可以点击

 

转载于:https://www.cnblogs.com/nianming/archive/2011/08/17/2142913.html

你可能感兴趣的文章
会议室预定设计
查看>>
Python笔记---错误笔记
查看>>
面试题解:输入一个数A,找到大于A的一个最小数B,且B中不存在连续相等的两个数字...
查看>>
助力春运 重庆机场今晨新增一架飞机入列
查看>>
刘海I关于iPhone X 的适配
查看>>
百度Apollo发布智能驾驶商业化解决方案
查看>>
关闭tomcat报错Cannot allocate memory
查看>>
从源码角度看ContentProvider
查看>>
iOS--React Native浏览器插件
查看>>
一个JSON字符串和文件处理的命令行神器jq,windows和linux都可用
查看>>
Flask源码解析:从第一个版本开始阅读Flask源码
查看>>
JavaScript 工作原理之二-如何在 V8 引擎中书写最优代码的 5 条小技巧(译)
查看>>
SpringBoot Cache 深入
查看>>
Three.js Scene Graph
查看>>
PAT A1045 动态规划
查看>>
保持ssh的连接不断开
查看>>
897-递增顺序查找树
查看>>
wiki迁移方法操作步骤
查看>>
php_screw
查看>>
Go语言之读写锁
查看>>