摘要:Linq to DataSet将Linq与ADO.NET集成,通过ADO.NET获取数据,然后通过Linq进行查询,从而实现对数据的复杂查询,Linq to DataSet可以理解为通过Linq对DataSet中保存的数据进行查询,一般den为以下几个步骤:1.获取DataSet或DataTable数据源,Linq to DataSet通过Linq查询DataSet或DataTable中的数据,所以首先要准备DataSet或DataTable数据源,可以通过ADO.NET直接从数据库中获取,也可以通过XML技术从XML文件中获取,也可以从其它任何形式的数据源获取数据,甚至可以直接在内存中创建并
阅读全文
摘要:数据库事务处理是以一个单一的逻辑单元完成一系列的操作,他可以由一系列的Sql语句组成,如果在该事务中包含的操作在执行的过程中没有发生错误,那么他对数据库所作的改变就是永久的,如果一旦有错误发生,它就不会对数据库作任何修改和改变。事务必须是原子工作单位,对于其数据的修改,要么全部执行,要么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的,如果系统只执行这些操作中的一个子集,则会破坏事务的总体目标,事务具有ACID属性: Atomic(原子性):事务应作为一个工作单元,事务处理完成,所有的工作要么都在数据库中保存下来,要么完全退回,全部不保留。 Consistent(一致性)
阅读全文
摘要:1.托管代码首先我们需要了解一下.NET的编译机制,在.NET框架下,编译分为两个步骤完成,第一阶段编译和JIT编译,在第一阶段编译过程中,任何语言都会被编译成中间语言(IL)代码,即托管代码。托管代码实际上就是中间语言(IL)代码,代码编写完以后进行编译,此时C#编译器将代码编译成中间语言,而不是直接在计算机上运行的机器码,程序集(Assembly)的文件负责封装中间语言。托管代码在公共语言运行库(CLR)中运行,这个运行库给运行代码提供各种服务,当代码中的某些方法被调用的时候,CLR把具体的方法编译成适合本地计算机运行的机器码,并且将编译好的机器码缓存起来,以备下次调用时使用,这个过程就叫
阅读全文