C#
梦索精灵
这个作者很懒,什么都没留下…
展开
-
C#接口的隐式和显示调用,区别和实例
C#接口的隐式和显示调用,区别和实例把代码打一边,然后看注释会明白很多。(新手用)namespace MyInface{ //显示接口就是只能用接口调用。 //隐式接口和类都能调用。 public interface IBookList { void Add(string BookName);转载 2012-09-01 14:35:40 · 689 阅读 · 0 评论 -
NHibernate生命周期:临时态、持久态、游离态-NHibernate入门到精通系列4
本节将为您介绍介绍NHibernate生命周期的三种状态:临时态、持久态、游离态。理解好NHibernate生命周期的三种状态,将有助于你更好的深入开发,下面进行介绍:1:临时态,英文名称:Transient临时态故名思义就是临时的,它随时将被垃圾回收,而且对数据库没有对应关系。 使用new来创建对象,非持久化,不存入Session。2:持久态,英文名称转载 2012-09-06 08:49:09 · 3109 阅读 · 0 评论 -
NHibernate单双主键与唯一外键映射-NHibernate入门到精通系列8
上一节:NHibernate多对一xml映射-NHibernate入门到精通系列7,介绍了NHibernate多对一的相关xml映射。本节将介绍NHibernate一对一的xml映射,为您介绍NHibernate单双主键与唯一外键映射相关内容。顺路推荐下国产优秀框架:CYQ.Data 数据框架在NHibernate中,一对多分以下几种映射类型:1:单向主键映射转载 2012-09-06 09:03:52 · 5508 阅读 · 0 评论 -
NHibernate多对多单双向关联映射-NHibernate入门到精通系列10
本节为你您介绍:NHibernate多对多关联映射。同样从以下两个方面介绍:1:单向多对多映射2:双向多对多映射国产优化数据框架推荐:CYQ.Data 数据框架以下为正文介绍:一、NHibernate单向多对多关联映射不多说,上图: 从上图中,我们发现,用户(User)多个对应多个角色(Role)。成就了“多对多”的关联关系。转载 2012-09-06 09:06:16 · 963 阅读 · 0 评论 -
spring.net配置文件
(一)物理路径(可以复制)IResource input = new FileSystemResource(@"self.xml");IObjectFactory fac = new XmlObjectFactory(input); (二)程序集方法url语法:file://文件名(复制)assembly://程序集名/命名空名/文件名(嵌入) IApp转载 2012-09-06 13:19:13 · 1220 阅读 · 0 评论 -
Spring.NET学习笔记4——对象的创建(基础篇) Level 200
学过了前面的课程,我们来一起学习Spring.NET的IoC容器对象的创建。 创建对象一般有3种方式:1.构造器创建,2.静态工厂创建,3.实例工厂创建 多数情况下,容器会根据对象定义中的type属性值去直接调用相应类型的某个构造器。另外,容器也可以调用工厂方法来创建对象,这时type属性的值就应该是包含工厂方法的类型(按:而不是要创建的类型,但通过该对象定义的名称获取的则是由工厂方法转载 2012-09-06 16:31:35 · 512 阅读 · 0 评论 -
Spring.NET学习笔记5——容器中对象的作用域(基础篇) Level 200
容器中对象的部署分为两种方式:singleton和非singleton(java里叫prototype)。这里的singleton指的是“单例模式”,就是说当一个对象被定义为singleton时,容器中就只会有一个共享的实例,任何时候通过id或别名请求该对象都会返回这个共享实例的引用(也就是说这个对象只会被创建一次)。当使用非singleton,或者说原型模式布署时,每次请求对象都会创建新的实例。转载 2012-09-06 16:37:17 · 705 阅读 · 0 评论 -
Spring.NET学习笔记6——依赖注入(应用篇) Level 300
谈到高级语言编程,我们就会联想到设计模式;谈到设计模式,我们就会说道怎么样解耦合。而Spring.NET的IoC容器其中的一种用途就是解耦合,其最经典的应用就是:依赖注入(Dependeny Injection)简称DI,目前DI是最优秀的解耦方式之一。下面我就来谈谈依赖注入的应用场景。 我模拟了三种不同的场景,可以一起学习使用依赖注入的重要性。 下面是应用场景的条件:人类使用工具劳动转载 2012-09-06 16:45:37 · 840 阅读 · 0 评论 -
Spring.NET学习笔记1——控制反转(基础篇) Level 200
在学习Spring.NET这个控制反转(IoC)和面向切面(AOP)的容器框架之前,我们先来看一下什么是控制反转(IoC)。 控制反转(Inversion of Control,英文缩写为IoC),也叫依赖注入(Dependency Injection)。我个人认为控制反转的意思是依赖对象(控制权)发生转变,由最初的类本身来管理依赖对象转变为IoC框架来管理这些对象,使得依赖脱离类本身的控制转载 2012-09-06 13:11:01 · 757 阅读 · 0 评论 -
Spring.NET学习笔记8——集合类型的注入(基础篇) Level 200
Spring.NET还支持集合类型的注入。而且使用起来也比较方便。 一、ILIst类型 使用元素作为ILIst的标签,value为集合中元素的值。也可以注入对象,甚至关联其它对象,使用 元素表示关联的对象,object 属性为所关联对象的id或name。集合可以为空,用元素来标记。 在元素中设置 element-type 属性表示泛型T的类型,例如 element-type="i转载 2012-09-06 16:53:10 · 634 阅读 · 0 评论 -
NHibernate多对一xml映射-NHibernate入门到精通系列7
NHibernate开发中的NHibernate多对一xml映射,和数据库开发是相离不开的,只是中间多了一层Xml映射。我们想一下,在数据库中,多对一的情况,即是外建和主键的关系,这种情况是很常见的,那如何在NHibernate中来表示多对一的关系呢?继上节实体与数据库的Xml映射标签-NHibernate入门到精通系列6的内容,我们来看一下如何实现多对一的Xml映射:一、转载 2012-09-06 09:00:37 · 1860 阅读 · 0 评论 -
NHibernate3版本新特性介绍
NHibernate3版本新特性介绍NHibernate久经版本之后,终于也到NHibernate 3版本,今天为大伙介绍下NHibernate 3新版本的新特性!下面是NHibernate3版本新特性:Configuration部分在Configuration部分新增两种Loquacious-Configuration方式:流配置(fluent-configura转载 2012-09-06 10:24:24 · 2320 阅读 · 0 评论 -
Spring.NET学习笔记3——实现一个简易的IoC框架(练习篇) Level 100
讲了这么多理论,我们来手动实现一个简易的IoC框架的,这样可以加深IoC的理论知识。 一、思路在我们使用Spring.NET框架的时候,首先需要实例化Spring.NET容器, 然后调用IoC容器IObjectFactory接口中GetObject方法获取容器中的对象。通过这一点就可以告诉我们制作IoC容器需要写一个获取XML文件内容的方法和申明一个Dictionary来存放IoC容器转载 2012-09-06 15:57:02 · 667 阅读 · 1 评论 -
Spring.NET学习笔记2——环境搭建(基础篇) Level 200
我们先来一起学习一下怎样使用Spring.NET。 一、环境下载及安装 到Spring的官方网站下载Spring.NET框架的安装文件(Spring.NET-1.3.0-RC1.exe)。目前Spring.NET最新的版本是1.3。下载并解压后就可以了。我们使用Spring.NET框架经常用到的一下几个文件:Common.Logging.dll(必要)Spring.Core转载 2012-09-06 13:20:31 · 867 阅读 · 0 评论 -
NHibernate一对多单双向关联映射-NHibernate入门到精通系列9
本节为您介绍:NHibernate一对多单双向关联映射。本节内容主要分两个方面进行介绍:1:单向映射 2:双向映射下面让我们开始介绍:一、NHibernate单向映射还是照旧,先上图:一个班级有多个学生,一对多!其实也可以反过来说,多个学生对一个班级,多对一。接然仍旧,上Xml配置。转载 2012-09-06 09:05:06 · 1464 阅读 · 0 评论 -
实体与数据库的Xml映射标签-NHibernate入门到精通系列6
NHibernate开发,必经阶段:需要实体与Xml映射,本节重点介绍这块内容。对于开发新手,掌握如何将数据库与Xml映射,是不可切少的,下面开始介绍:一:何为NHibernate映射?其实说白了,就是在数据库和实体之间,放多一个外置存储介质Xml,来链接两者的关系,当数据库发生变化时,通过修改Xml配置,达到映射的切换,从而不需要修改代码。让我们看一个简单的数转载 2012-09-06 08:58:14 · 2760 阅读 · 0 评论 -
C#中Abstract和Virtual
在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别。二者都牵涉到在派生类中与override的配合使用。一、Virtual方法(虚方法) virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况: 情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用转载 2012-09-01 14:44:40 · 1170 阅读 · 0 评论 -
virtual (c#参考) .
virtual关键字用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。这提供了一种使派生类可以包含与基类方法同名的方法的机制。使用virtual有以下几个要点: 1、基类方法必须定义为virtual。 2、如果派生类中的方法前面带有new关键字,则该方法被定义为独立于基类中的方法(也就是说与基类中的同名方法共存,但是基类的方法被隐藏了)。 3、如果派生类中的方法前面带有o转载 2012-09-01 14:51:10 · 463 阅读 · 0 评论 -
TestDriven.NET 2.0——单元测试的好助手 - TerryLee's Tech Space - 博客园
在软件开发领域,测试驱动开发(Test Driven Development,TDD)技术在逐渐为广大开发者所接受,它是在添加新代码之前让你的测试代码出错的一种开发技术。在开始编写代码之前首先要写你的测试代码,然后再编写代码让你的测试通过,可以想象,如果没有一个好的单元测试工具,这项工作其实是无法完成的。相信很多.NET开发人员者对于开源的NUnit都不陌生,但是它并不能很好的与Visual St转载 2012-09-04 16:47:34 · 1694 阅读 · 0 评论 -
NHibernate扩展:FluentNHibernate基础教程
经过大大小小的项目之后,在在DevText项目中使用下Fluent NHibernate,今天给大伙介绍一下Fluent NHibernate,以及使用这个有什么好处及带来什么方便!以下为介绍内容:一:Fluent NHibernate基础介绍Fluent NHibernate提供了一个方法让你不再需要去写NHibernate的标准映射文件(.hbm.xml),而是可以把你的映射文转载 2012-09-05 13:23:55 · 3551 阅读 · 0 评论 -
基础增删改查-NHibernate入门到精通系列3
从今天开始,我们将进入NHibernate开发学习中,首先来一些NHibernate的增删改查操作,把这几个学会了,基础就打好了。有时间也可以学学国产的CYQ.Data 数据框架,也是相当优秀的一款框架!下面我们按以下步骤进行操作:1.实体类与Xml映射2.NHibernate工具生成对应的表结构3.编写数据库访问对象DAO 4.单元测试一下增、删、转载 2012-09-05 16:47:19 · 2824 阅读 · 1 评论 -
NHibernate ORM介绍及优缺点-NHibernate入门到精通系列1
对于.NET的开发,优秀的数据持久层框架层出不穷:如国内的:CYQ.Data 数据层框架如国外的:Spring.net框架这个系列,也是国外的NHibernate入门到精通系列,各家各自用,有心也支持下国产。下面进入NHibernate系列的开篇介绍: 一、何为NHibernate? 什么是?NHibernate?NHibernate是一个面向.NET环境的对象/转载 2012-09-05 13:34:21 · 4482 阅读 · 1 评论 -
Could not determine type for: decimal的解决方案
Could not determine type for: decimal, for columns: NHibernate.Mapping.Column(Price)不能决定 decimal 类型??属性在C#定义为decimal 类型,映射定义为 public virtual decimal? Amount { get; set; }原创 2012-09-05 16:28:51 · 4481 阅读 · 0 评论 -
NHibernate读取配置文件的三种方式
Configuration config = new Configuration();这种配置方法将会到应用程序配置文件(App.Config,Web.Config)中查找NHibernate的配置信息,NHibernate的配置节必须符合应用程序配置文件个格式,前面的教程我们已经看到过了。Configuration config = new Configuration().Configu转载 2012-09-05 13:11:29 · 4916 阅读 · 0 评论 -
Nhibernate入门基础开篇教程
本文将为您解答以下内容Nhibernate入门基础开篇知识:Nhibernate ORM概念?Nhibernate 的作用?Nhibernate如何搭建?Nhibernate如何使用?下面让我们开始的Nhibernate的旅程。 第一个问题: 要明白Nhibernate是什么,就要首先明白什么是ORM。 先看一张经典的图:转载 2012-09-05 13:14:10 · 1439 阅读 · 2 评论 -
NHibernate开发环境与配置-NHibernate入门到精通系列2
上一篇:NHibernate ORM介绍及优缺点-NHibernate入门到精通系列1中介绍了NHibernate与ORM,读者对其有一个感性的认识。本节,将继续此系统,介绍:NHibernate开发环境与配置和其体系结构知识。下面为正文内容:一、NHibernate的开发环境官网地址:http://nhforge.org/NHibernate3为目前最新的版本,其下载转载 2012-09-05 13:39:29 · 7599 阅读 · 1 评论 -
NHibernate - Where ISession.Query<T>() is located
When I try to compile the following codeusing System; using System.Collections.Generic; using System.Reflection; using System.Linq; using NHibernate; namespace NewNHTest { class转载 2012-09-05 16:19:57 · 2606 阅读 · 0 评论 -
NHibernate持久化与合法性验证回调-NHibenate入门到精通系列5
本节为您介绍:NHibernate持久化与合法性验证回调内容。一:NHibernate持久化介绍首先来了解一个概念:何为NHibernate持久化?[Persistent]持久化是指将(内存中)数据保存到外部介质,如磁盘中。然后再来了解一个新概念:何为NHibernate持久化类?[Persistent Classes]持久化类其实就是持久化的一个数转载 2012-09-06 08:53:44 · 1210 阅读 · 0 评论 -
Spring.NET学习笔记7——依赖对象的注入(基础篇) Level 200
一、属性注入 上篇我们简单提到依赖注入的用途。回顾一下所讲内容,发现在object节点下使用了。而property 标签正是用来属性注入的。而ref是用来标识是关联到哪个object。而name属性是指属性名。如下: 值类型的注入是需要使用property 节点的value属性。如 作为内联类型可以使用如下: 同理,内联类型可以转载 2012-09-06 16:49:09 · 618 阅读 · 0 评论