摘要:
声明:本文只针对 EF6+ 默认情况下,Code First对实体进行插入、更新、删除操作是直接在表上进行的,从 EF6 开始你可以选择使用存储过程(Stored Procedures)简单实体映射 Basic Entity Mapping 注意:本文将使用 Fluent API 来配置使用存储过程public class Blog{ public int BlogId { get; set; } public string Name { get; set; } public string Url { get; set; } [Timestamp] pub... 阅读全文
摘要:
上一篇文章我们讲解了如何用Fluent API来配置/映射属性和类型,本文将把重点放在其是如何配置关系的。 文中所使用代码如下public class Student { public int ID { get; set; } public string Name { get; set; } public DateTime EnrollmentDate { get; set; } // Navigation properties public virtual Address Address { get; set;... 阅读全文
摘要:
上篇博文说过当我们定义的类不能遵循约定(Conventions)的时候,Code First提供了两种方式来配置你的类:DataAnnotations 和Fluent API, 本文将关注Fluent API. 一般来说我们访问Fluent API是通过重写继承自DbContext的类中方法OnModelCreating.为了便于例示,我们先创建一个继承自DbContext的类,以及其它的一些类以便使用public class SchoolEntities : DbContext { public DbSet Courses { get; set; } ... 阅读全文
摘要:
Entity FrameworkCode First利用一种被称为约定(Conventions)优于配置(Configuration)的编程模式允许你使用自己的domain classes来表示EF所依赖的模型去执行查询、更改追踪、以及更新功能,这意味着你的domain classes必须遵循 EF所使用的约定。然而,如果你的domain classes不能遵循EF所使用的约定,此时你就需要有能力去增加一些配置使得你的classes能够满足EF所需要的信息。 Code First提供了两种方式来配置你的类:DataAnnotations, 使用简单属性;Fluent API, 以编程命令... 阅读全文
摘要:
------------------------------------------------------------------------------------------------------------ 注意:以下所讨论的功能或API等只针对Entity Framework 6,如果你使用早期版本,可能部分或全部功能不起作用! ------------------------------------------------------------------------------------------------------------ Entity Framewo... 阅读全文
摘要:
Entity Framework 简言之就是一个ORM(Object-Relational Mapper)框架. Code First使得你能够通过C#的类来描述一个模型,模型如何被发现/检测就是通过一些约定(Conventions)。Conventions就是一系列规则的集合,被用于对基于类别定义的概念模型的自动装配。 这些约定都被定义于System.Data.Entity.ModelConfiguration.Conventions命名空间下。 当然你可以进一步地对你的模型作出配置,例如使用Data Annotations或者Fluent API. 推荐的配置顺序如下:优先使用D... 阅读全文
摘要:
本文所使用的软件及环境:Visual Studio Ultimate 2013 (下载地址:http://www.visualstudio.com/downloads/download-visual-studio-vs);MVC5 + EF6 + .NET Framework 4.5 + LocalDB;Windows 7 x64 Professional 说明:在EF (Entity Framework,以下简称EF6)框架下,操作数据的方式有三种:Database First, Model First, 以及 Code First,本文基于Code First创建。更多关于EF6请参... 阅读全文
摘要:
一、Android 4.4 KitKat Google前段时间发布了Android新版本Android 4.4 KitKat,由于我的Nexus 4也是托朋友从US带回来的,所以很快就收到了Google的自动推送更新,由于我手贱(其实也想尝尝新OS的魅力,但是由于没做功课,不知道升级之后有些问题)就点了更新,殊不知升级了以后,发现有些问题:WiFi问题,感觉联网的速度太TMD蛋疼了,后来网上查了查知道说是WiFi连接不稳定,怪不得偶觉得速度太慢了,原有是频繁掉线;无法配置访问公司Outlook邮箱;照相,打开相机慢,成像速度也慢,Google新儿子Nexus 5也未能幸免;环聊,为了尝鲜,我. 阅读全文
摘要:
.NET Framework在web.config或app.config中默认提供了很多种设置,以便能够改变应用程序内嵌组件的行为,例如、、等等,这对于常规情况下的一般程序员而言是足够用的,也是非常方便的。但是我们越来越多地发现需要自己来控制一系列设置的集合 - 有时是面向组件的(自定义的或第三方提供的),有时是应用程序中使用的一系列值的集合。 .config虽然默认提供了自定义设置(在节点下),但是它太弱了,仅仅只支持键值对(key/value) 虽然键值对在大多数情况下也是很有帮助的,但是它对于健壮的组件、复杂的设置而言是不够灵活的,甚至显得过于简单。幸运的是,微软为我们提供了一种... 阅读全文
摘要:
本文关注以下方面(环境为VS2012、.Net Framework 4.5以及Unity 3):AOP简介;Interception using Unity示例配置文件示例一、AOP简介 AOP为Aspect-Oriented Programming的缩写,意为"面向切面(方面)编程",按维基百科的解释是"AOP is a programming paradigm that aims to increase modularity by allowing the separation of cross-cutting concerns" (http://e 阅读全文