01 2013 档案
摘要:回到占占推荐博客索引 EF架构系列主是我在项目开发中,总结出现的一些经验性的东西,拿出来与大家分享,哪块与的有问题,还请大家指出来,然后我们一些再去讲究! EF架构~系列目录 第一回 EF架构~了解一下,ADO.NET Entity Framework 第二回 EF架构~终于自己架构了一个相对完整的
阅读全文
摘要:回到目录我之前讲过为实体添加注释的文章,最近开发过程中,感觉有必要把Display特殊也做在T4模板里,这样,实现在前台绑定时,就把信息自动显示出来了,呵呵。主要分为两步:1 在T4模板里添加Display特性的命名空间 , 2 在T4模板里为每个属性添加Display特性打开tt文件,后我们找到这行,添加命名空间然后再找到这行,为属性添加Display特性保存tt模板文件,这时,所有实体将会进行更新,打开实体文件后,你的特性就自己被加上了,在前台UI层进行绑定时,直接显示出名称来了,如果不是特别的业务可以不用再ViewModel了,呵呵!感谢您的阅读!回到目录
阅读全文
摘要:(本文不说IOC,不说设计模式,只说基础的internal关键字的实际意义)题目非常有意思,“隐藏应该隐藏的对象”,事实上,我们在做开发时,会遇到一些问题,一个功能会涉及到一些类,一些方法,而向外开放的接口往往只有一个,即一个规范,多个实现,而这些实现,是通过一个类型来区别的,如:一个加密码方法EncryptString,它会有一个类型去标示你是用md5,des,还是其它方式去做加密,而对于实现的细节,调用者不需要关心,当然这还是面向对象的原则问题。它的类型可能是个枚举: /// <summary> /// 加密类型 /// </summary> ...
阅读全文
摘要:回到目录我很荣幸来写这个结局,有时,我们看人,物,事需要用心去看,而不是用眼睛,因为用眼睛看到的往往是事物的假像,在这里对我最可爱的兄弟说一声,对不起。从人类的起源谈面向对象,事实上主要说的是面向对象,现在我简单来说一下面向对象的特性吧,当你把一个程序写成面向对象的之后,它将有三个好处,即封装,继承和多态,这是所有面向对象语言的一个共性,而对于JS这个语言来说,也可以借鉴一下,如JS里实现封装,JS里的继承等等。JS封装:当我们干某件事时,需要将一些代码组织在一起,形成一个function,而这个过程我们称为封装,而在使用这个功能时,只要知识function的方法签名即可,你不需要管它的实现细
阅读全文
摘要:回到占占推荐博客索引 MVC3配合Razor视图引擎使得我们在开发项目中更加快捷,以下是我在项目开发过程中整理的一些笔记,和大家一起分享一下 爱上MVC系列~目录 爱上MVC~Razor引擎时,在遍历中巧用Output.Write方法 爱上MVC~开发Areas模块时需要注意一下路由问题 爱上MVC
阅读全文
摘要:回到目录位运算无论在C#,VB还是在T-SQL里都有对它支持,位运算即对数值类型的每位进行计算,对于程序里,你可以使用十进制,十六进制,二进制对它进行位运算,事实上无论你使用哪种进制,对于计算机来说最后都为把它转换成二进制(0,1)的形式,因为二进制为简单,呵呵。下面是关于位运算的表格运算符号位运算操作符运算对象类型运算结果类型对象操作数实例~非运算整型整型1个~x&与运算2个x & y|或运算2个x | y^异或运算2个x ^ y<<左移运算2个x << 2>>右移运算2个x >> 2一般地,这种位运算中,我们的操作数多用于2的
阅读全文
摘要:回到目录事件机制,在JS中感觉很容易让人接受,一个鼠标被按下时会发生一些事情,一个键盘的键被抬起时同样可以发生一些事情,这种比喻很容易让人接受,不是吗,呵呵。下面我将JS中几个主要的事件说一下,然后再说一下触发事件的几个方法。JS中的主要事件说明以下是我们在项目开发中常用到的事件,红色的为最常用的事件,呵呵onclick 鼠标点击某个对象ondblclick 鼠标双击某个对象onerror 当加载文档或图像时发生某个错误onfocus元素获得焦点onkeydown某个键盘的键被按下onkeypress某个键盘的键被按下或按住onkeyup某个键盘的键被松开onload某个页面或图像被完成加载o
阅读全文
摘要:老赵同志写的页面缓存片断不错,用着方便,但我感觉在前端调用上有些不便,可以我把他的代码又改了一下,呵呵!老赵代码的调用:Before Rendering:<%= DateTime.Now %><br />Rendering:<%= Html.Cache("Now", null, DateTime.Now.AddSeconds(60), Cache.NoSlidingExpiration, () => { System.Threading.Thread.Sleep(5000); return DateTime.Now; }) %>&l
阅读全文
摘要:回到目录上一文章主要说的是JS中的类,有很多朋友回复了我的文章,在此很感谢大家,也对一些朋友提出的问题进行了回复,“类”这东西,只是一种思想,我们不应该把重点放在“某种语言是否提供类,或者是否实现了类”,这是不重要的,重要的是面向对象中的类的思想!今天主要说的是方法,JS中的方法也叫做函数function,它将一些有关系的代码组织在一起,形成一个整体,这类似于面向对象中的封装,你不需要了解方法的实现细节,你只要去调用它,了解方法的签名即可。最简单的函数(方法):<script type="text/javascript"> //加运算 function Sum(
阅读全文
摘要:注意:这里的跨域指不到同一域名下,包括一级与二级域名,这里也认为不在同域下从A网站把信息以Post的方式发送到B网站,这种过程叫做跨域POST,相类的,A网站把B网站的信息获取回来,一般称为跨域GET请求,而对于后者可以通过异步方式实现,在jq里封装了jsonp,用它来实现异步跨域请求;而异步跨域POST是不可以被实现的,下面我们通过实例来说明。一 异步跨域JS代码用来实现跨域GET和跨域POST,代码如下:(从www.post.com域名下访问二级域成file.post.com)<script type="text/javascript"> $.ajax({
阅读全文
摘要:回到目录 今天来说JS中如何实现类(class),事实上本应该昨天晚上写的,可我失言了,在些说一声“抱歉”!JS中的类是JS面向对象的基础,也是我最拿手的东西,你写的代码能否提高一个层次,一般是从这点上看出来的。占占对类的定义:类是对现实中的事物的抽象,一个类一般由属性和方法构成,属性是一些固定的信息,而方法是类的某种行为,类往往用来抽象一些复杂的对象,类与类这间可以进行继承,一般通过JS的function实现,JS中的类对象是实现JS面向对象的基础。占占对结构体的定义:一个结构体也是对现实事物的一种抽象,它用来表示逻辑简单的对象,一般通过JS的object对象实现实现结构体的代码: ...
阅读全文
摘要:回到目录本讲主要是JS语言中的代码如何被解释执行的,这个问题其实和其它语言是一样的,程序执行顺序为“从上到下”,当然如果代码中有分支,它的执行顺序可能有所改变,而这种支在程序设计中叫做“分支结构(条件结构)”,再或者某个操作需要反复执行10次,这在程序设计中叫做“循环结构”。正常的程序结构 //普通的结构 var info = "hello world" console.log(info);带有分支的程序结构 //IF条件结构 var number = 1; if (number % 2 == 0) ...
阅读全文
摘要:回到目录啥叫编程,啥叫程序员?这是一个有意思的问题,呵呵!啥叫编程编程其时很简单,就是把一些抽象的东西通过代码的方式表现出现,而代码我们通常叫它开发语言,我们使用开发语言完成某种功能的过程,叫做编程!啥叫程序员程序员是一种有思想,有干劲,有热情,有梦想,而又与常人在某些地方不同的人,网上有很多说法,也有很多定义,如程序员应该叫苦B程序员,程序员应该叫码农,程序员应该叫IT民工等等,但我并不这样认为,程序员是可以被人们尊敬的,他们绝对是对未来有着美好希望,对工作有着执着的追求,对周边需要帮助的人有着无畏的行动,对有共同语言的人有着知已般感情的一群可爱的群体!写程序枯燥吗?有很多人说,写编程枯燥,
阅读全文
摘要:我们都知道VS在调试中会启动一个或多个(根据你的解决方案中的WEB项目而定)WebDev.WebServer40.exe进程,这个进程为我们提供了.net运行时,就是你访问IIS一样,而它的域名一般是localhost:端口,这在我们开发时可能会有些不妥,因为我们在开发项目时,WWW服务器与文件服务器一般为两台,而它们的域名一般是一级与二级的关系,如:主站域名:www.test.com,文件服务器域名:file.test.com,而主站与文件服务器要求有交互,如引用的JS,引用的flash播放器之类的,而如果它们不在同域下,往往是不能正常运行的,这时,就需要在本地调试时使用域名的形式。在V..
阅读全文
摘要:之前写过类似的文章,今天决定在简单的说说,在很多时候,我们在发布项目时,直接就发了,没有什么讲究,但我要说的是,VS为我们提供了一些工具,它可能希望我们在发布项目时要讲究一些,呵呵!调试模式发布(生产,运营)模式这就是VS为我们提供的两个模式,当然你也可以根据团队的需要去建立其它的模式,但我和小微认为没那个必要了,呵呵,下面来看看这两种模式在什么时候会用。首先,如果你在代码中没有用到debug,release,那事实上它们在发布时,这两种模式没有区别,但如果你的代码中用到了,那就不同了,可能一个方法在调试时用,但运营环境时就不需要了,如果调试日志的写入,可能只是调试时用,但运营时就不需要了,但
阅读全文
摘要:大叔推荐文章系列 keycloak kubernetes 云原生网关 java springboot Springcloud golang 设计模式 其它推荐文章列表 知其所以然~目录 DotNetCore跨平台~文章索引~永久更新 Lind.DDD敏捷领域驱动框架~介绍 Linux~学习笔记目录索
阅读全文
摘要:回到目录前言javascript脚本语言,它的成功很大程度上体现在它对各大浏览器的兼容性上,各大浏览器都按着ECMAScript的标准走,这也使得javascript成为前端工程的一种必要筹码,你的JS牛,你的薪水可能就是5位数,呵呵!有人说JS就是脚本语言,一个个方法,一个个小插件,但我并不这样认为,对于任何一种开发语言来说,它都可以是面向对象的,都可以遵循着面向对象的原则去走,只有这样,你开发出现的代码才是健壮的,可读性强的,看着舒服的。javascript中的变量javascript中的变量可以分为全局变量与局部变量,当你不去var声明时,它会默认被声明为全局变量,加上var它就是当前方
阅读全文
摘要:回到占占推荐博客索引 上周邀朋友之请,写了JQ系列,但感觉对于初学者来说,有点复杂,或者摸不着头脑,所以,这次要从0起步了,从最基础的开始写起,下面我整理了一下目录,呵呵! Javascript基础与面向对象基础~目录 第一讲 啥叫编程,啥叫程序员 第二讲 Javascript中的变量及变量的类型
阅读全文
摘要:回到目录你有没有想过,当用户打开浏览器,输入网址,回车,然后浏览器上就会出现网站的内容,在这个过程中,是怎么的一个过程呢!当请求一个*.aspx,*.html,*.jpg文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀为aspx之后,将这个请求转交给ASPNET_ISAPI.dll,ASPNET_ISAPI.dll会通过(Http PipeLine将请求发送给ASPNET_WP.exe进程,在ASPNET_WP.exe进程中通过HttpRuntime来处理这个请求,处理完毕将结果返回客户端。当Http请求进入 Asp.Net Runtime以后,它的管道由托管模块(M
阅读全文
摘要:回到目录从客户端发个请求到服务器,服务器会判断这个文件是静态的HTML,图像,还是动态的(asp,.net,jsp,php等等),再根据它们去选择IIS的处理程序(handler),如果是静态文件直接由IIS进行相应,而如果是动态文件,则交给aspnet_isapi处理程序去响应它,如图所示:第一次请求时创建HttpRuntime对象:为每个请求创建对象(HttpContext)为每个请求创建HttpApplication对象:下面是个详细的.net http的三大核心对象,我们在以后的文章中会详细介绍而下面这张图,详细的说明了HTTP请求的具体流程及在何时响应的何种事件这张图里的几大对象将下
阅读全文
摘要:回到目录定义百度百科定义:超文本传输协议 (HTTP-Hypertext transfer protocol) 是分布式,协作式,超媒体系统应用之间的通信协议。是万维网(world wide web)交换信息的基础。它允许将超文本标记语言 (HTML) 文档从 Web 服务器传送到 Web 浏览器。HTML 是一种用于创建文档的标记语言,这些文档包含到相关信息的链接。您可以单击一个链接来访问其它文档、图像或多媒体对象,并获得关于链接项的附加信息。OSI层的位置,它位于传输层HTTP工作在TCP/IP协议体系中的TCP协议上。客户机和服务器必须都支持 HTTP,才能在万维网上发送和接收 HTML
阅读全文
摘要:回到占占推荐博客索引如果你是一个开发人员,如果你对HTTP一些理论知识了解不透彻,那本系列文章将会很适合你,一个好的WEB开发人员,他一定是一个了解HTTP请求的人,一个好的WinForm开发人员,他一定是一个了解windows系统知识的人,呵呵!开发人员应该对IIS理论层的知识了解的多一些~目录第...
阅读全文
摘要:回到目录在Razor引擎中,对于在表格中进行遍历时,一般会这样写 @{ for (var i = 0; i @i } }这是没有问题的,但如果你的元素i,希望在一...
阅读全文
摘要:回到目录百度百科中对闭包的定义: 闭包是可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义。“闭包” 一词来源于以下两者的结合:要执行的代码块(由于自由变量被包含在代码块中,这些自由变量以及它们引用的对象没有被释放)和为自由变量提供绑定的计算环境 (作用域)。在 Scala、Scheme、Common Lisp、Smalltalk、Groovy、JavaScript、Ruby 和 Python,objective c 等语言中都能找到对闭包不同程度的支持。占岭对闭包的定义: 对于函数A,它内部有子函数B,A函数...
阅读全文
摘要:回到目录前一篇文章主要介绍了如何通过JQ实现异步数据的访问与操作,写法上是最标准的.ajax完整形式,这讲主要把剩下的简写形式说一下。前言:以下是整理的异步请求时的参数说明 //$ajax异步通用参数说明,[]里面的参数是可以省略的 //url,[data],[callback],[type] //data:待发送 Key/value 参数。 //callback:载入成功时回调函数。 //type:返回内容格式,xml, html, script, json, $.load() 载入远程 HTML 文件代码并插入至 DOM...
阅读全文
摘要:回到目录前言今天主要讲一下JQ中的异步编程,它将ajax进行封装,在进行异步请求时显得非常容易,无论是GET,POST方式,还是text,xml,javascript,json等数据通讯都是那么的自然现在,我们就走入jq的ajax的殿堂吧。GET请求获取数据 <script src="http://img1.c2cedu.com/Scripts/jquery/jquery-1.4.2.min.js" type="text/javascript"></script> <script type="text/javasc
阅读全文
摘要:回到目录 前几篇文章以JQ为主,本系列的八篇文章中,第一讲为JS基础,从第二讲开始到第六讲主要是JQ基础知识,而第七讲与第八讲是JS中的一些高级应用,写到这里,也快要和《Jquery真的不难》说再见了,有点舍不得,恩,连续的两天失眠,呵呵,不知道为什么,可能是兴奋过度了吧,呵呵,总之这几天的状态超级好,我喜欢这种感觉,非常感谢!JS也要面向对象这个题目很大,我是搞C#开发的,而C#是个面向人性化的语言,呵呵,我更希望把面向对象改成面向人性化,呵呵,因为只有你把它拟人化之后,你才能更好的去学习吧,编程,上学时大多人说它是个枯燥的东西,编程课卓见变成了睡觉课,呵呵,但似乎从那里起,我就已经被...
阅读全文
摘要:回到目录上一回主要说的是JQ中的几个主要的事件,文章的最后还介绍了匿名函数的使用,恩,今天主要来看一下JQ中的遍历,就是在JQ中进行循环操作以及在遍历时要注意的地方。前言要讲遍历就要说数组,你不可以对一个单独的变量进行遍历吧,呵呵,数组是一些各种类型变量的集合,在JS中一个数组,你完全可以把数字与字符混合在一起,这是合法的。JS中的数组数组的定义 var arr = [1, 2, 3, 4, "one", "two", "three", "four"]; //一维数组 var props = [["拳头&
阅读全文
摘要:回到目录相关文章将不确定变为确定~transactionscope何时提升为分布式事务将不确定变为确定~transactionscope何时提升为分布式事务~续将不确定变为确定~transactionscope何时提升为分布式事务~再续(避免引起不必要的MSDTC) 对于transactionscope我在之前写过两篇文件,在上一篇文章中已经把它何时会触发分布式事务写的很清楚了,但实现上,对于原理上为何会产生MSDTC说的还不够明白,所以,有必要再写一篇终如何去避免不必要的MSDTC。注意本篇文章是上一篇文章的继续,主要说的是数据库服务器与WWW服务器不在同一台电脑上的情况前言分布式事务它依赖
阅读全文
摘要:回到目录上一篇文章主要说的是JQ中如何去操作HTML标签的样式,今天主要来学习一下JQ几个比较重要的事件,如单击click,双击dblclick,鼠标移入mouseover,移出mouseout,焦点focus,移出焦点blur等等前言单击双击鼠标移入与移出焦点与移出焦点JS中的匿名函数前言事件一词,大家应该不会陌生,我认为可以这样定义事件,当某个或某几个操作之后,会引入一个或者几个结果的产生,而这个结果我们叫它事件,即Event,JS世界中的事件与传统高级语言中的事件很类似,如对鼠标的单击,双击,键盘的按下,抬起等等,而在JQ的封装下,我们可以为JQ对象(一般是以$开头的变量,当然$只是JQ
阅读全文
摘要:回到目录相关文章将不确定变为确定~transactionscope何时提升为分布式事务将不确定变为确定~transactionscope何时提升为分布式事务~续将不确定变为确定~transactionscope何时提升为分布式事务~再续(避免引起不必要的MSDTC) 之前写过一篇关于《将不确定变为确定~transactionscope何时提升为分布式事务》的文章,但今天又测试了一下,发现前一篇文章有很多问题,这里再把问题说一下。一 什么时间会把你的transactionscope提升为分布式事务,即要使用MSDTC服务 当你的WEB服务器与数据库服务器在同台电脑上,对同一个库进行操作时,它不.
阅读全文
摘要:回到目录 对于如何修饰HTML标签,这对于JS来说,可以通过setAttribute来设置标签的属性,通过getAttribute来得到标签的属性,而在JQ中当然也可以实现类似的功能,方法上肯定比JS要简化多了。一 通过修改标签属性来改变它的样式JS设置和获取标签的属性 <script type="text/javascript"> window.onload = function () { var attr = document.getElementById("attr"); attr.setAttribute("style&qu
阅读全文
摘要:昨天写了关于使用Castle.Windsor来实现IOC功能,今天需要写一下使用Castle实现对方法的拦截,这实事上是.net平台实现AOP编程的基础,当你可以对方法进行拦截时,你就可以动态地干很多事,如在方法执行前做权限验证,执行后到日志记录,异常处理等等,怎么样看到这里,胃口来了吧,呵呵,对于技术痴迷者来说,这是正常的,好了,说干就干!前言:我们在开发项目时,你的项目可能已经上线运营了,内部的代码如果修改风险是很大的,这当然也不符合OCP了,你这前的代码在运营过程中已经将BUG修改完成,运行很稳定,但这时,你的BOSS要求你在方法操作之前做一下验证,这时,你怎么办?方法1:改原来的方法,
阅读全文
摘要:回到目录在写完第一回之后,看到了朋友们的回复,指出了我代码中的一些问题,确实由于时间仓促没有使用IDE,直接搞上了,又由于本人记忆力不好,所以把大小写都忘记了,还好晚上回家,用VS改了一下,呵呵,真是对不住大家了。从这一讲开始,我们将直正接触一个JQ类库,学习一下JQ的写法,JQ的一些常用的命令等等,今天主要讲的是JQ里的选择器,这也是JQ的一大特点,这从它的名称jQuery中可以看到,主要功力体现在查询上。前言:对于写在<script></script>中的代码,一般在JS环境,我们一般把代码写在window.onload=function(){...}代码块里,这个
阅读全文
摘要:IOC的容器确实不少,unity,autofac,Castle 等等,前两种组件如何实现IOC在我之前的文章中已经做过说明了,今天主要来说一下Castle如何去实现IoC,事实上Castle是小微的一个开源项目,最早接触它是在orchard项目中,在orchard里主要用在动态代理方法拦截上,当然这是castle最重要的作用,事实上它当然也可以实现IoC了,不过,你要下载一个Castle.Windsor.dll,它主要实现ioc功能的。说干就干,事情和前两个组件的工作场景是相似的,一个irepository,多种实现方式,ef,linq,nhibernate,ado.net等等,你可以根据你的
阅读全文
摘要:回到目录前言 说Jquery之前,先来学习一下Javascript(以后简称为JS)语言中的基础知识问题,其时对于每种编程语言来说基础知识都是大同小异的,对变量,函数,条件语句块,循环语句块等等,而对于每种语言在写法上到是显得各有不同,如JS里在定义变量时,你要用var去声局部变量的声明,而对于弱类型的语言JS来说,你也可以不加var,但不加它会认为这个变量为全局变量,这是要注意的。变量在程序运行过程中,其值可以发生改变的(呵呵,10多年前书上的定义)var people ; //声明一个名为people的变量var people="good boy" ; //声明变量的同
阅读全文
摘要:回到占占推荐博客索引 JQ不错,被JS大师们封装的不错,这对于开发者来说是件好事,会让你少写很多代码,呵呵,你可能已经忘记了document.getElementById,document.getElementByTagName等等恩,写这个系列的目的是帮助“我喜欢的”年轻人们一起成长,呵呵! 对于
阅读全文
摘要:回到目录对于.net环境而言,日志的开源组件有很多,像Nlog,log4net等等,而我今天要介绍的是我的日志组件VLog,呵呵,事实上实现原理与作用都大同小异。作用:记录程序运行中的相关信息特点:提供了消息日志,错误日志,调试日志,警告日志,崩溃日志等等优势:提供了多种日志实现的方式,如SQL数据库,XML文本,WIN日志等等配置:它可以通过配置文件进行设置,提供了日志级别和记录方式等参数说明:VLog项目层次分明,一个接口,一个基类,5个实现的功能类,一切都是那么自然,下面看一下结构图:一个接口: 1 namespace VLog 2 { 3 /// 4 /// 日志操作...
阅读全文
摘要:这是一个系列,这是一个一看就叫人兴奋的东西,你的项目是否会有一些通用的核心组件,它在跨项目方面是否很方便,它在自身的扩展性上是否灵活,它的代码的优雅度是否有一个标准,它的代码是否严谨,这些将在这个系列中给大家进行介绍。AOP不是一个新东西,它对项目进行横向切割,它是对面向对象OOP的补充,对于通用的模块我们可以使用AOP的编程思想来干这事会比较好,世事上,在小微的世界里有很多牛X的开源项目都使用了AOP的思想,如orchard,注意我说的是思想,就是说,你,我,他所实现的AOP方式是不同的,这很容易理解。事实上,我们这个系列的文章主要是在讲Orchard Framework这个层次,下面看一下
阅读全文
摘要:回到目录在程序中,为了保正代码的严禁性我们会在需要的地方加个try...cache块,作用是对一个已知或者未知的异常进行捕获,这是正常的,任何一种面向对象的语言都提供了这个基础的功能,C#也不例外,事实上这篇文章的重要是,对于比较深度的方法调用中,异常被抛出的顺序。下面代码块中,WEB层调用BLL层方法,而BLL层方法去调用DAL层方法,而在这三个层的三个方法中都加了try...catch块,而在BLL与DAL中我会故意让程序产生一个已知的异常,并进行捕获,最后进行日志的写入。看代码: 1 static void DAL() 2 { 3 int a = 0; 4 ...
阅读全文
摘要:回到目录这可能并不是一个问题,因为它很多时间会被我们所忽视,我们在开发时,在页面上使用一个对象的一个属性,当对象被new后,可能还没有赋值也可能返回给它的值为null,那这时使用它里面的属性,它会抛System.NullReferenceException吗?当我们对象不为null,我们使用这个对象的子对象,这个子对象如果为null,使用它的属性,它会抛System.NullReferenceException吗?这是一个看似简单的问题,但对于它的结果可能我们一时并不能确定,还是用机器来证明它吧两个类型:1 /// <summary>2 /// 小u3 ...
阅读全文
摘要:回到目录很多时间之长,我写了EF架构~性能高效的批量操作(Insert篇),而今天我把Update篇也写一下,这对于批量处理数据很有帮助,它解决了EF与linq to sql批量更新数据上的效率问题。对于EF架构中的批量更新操作,需要我们为实体的导航属性进行手动的标示,因为EF生成的实体中没有一个特殊的说明,所以,我们必须要告诉系统,哪个属性是导航属性,而导航属性是我们不去进行update的。1 /// <summary>2 /// 属性的导航属性3 /// </summary>4 public class NavigationAttribute : Attrib...
阅读全文
摘要:回到目录一般来说,在T-SQL时代,随机排序可以进行newid()产生出guid值来实现,代码一般为:SELECTTOP10*FROM User ORDERBYNEWID();而到了linq to sql时代,由于产生的语句为延时的(可能是这个原因),所以你用类似这代码:from user in db.User order by Guid.NewID() select user 是不能实现的,这时,如果你的linq to sql非要找个实现的方法,可以在当前数据上下文类中,加个函数:(注意,我们为了扩展性,最要新建一个分部来做这事) 1 /// <summary> 2 /// 数据
阅读全文
摘要:下面程序主要讲的是有一个大对象people,它有两个子对象html和video,这两个子对象都有方法play,并都有参数x,而x在这个play方法中需要被加工,而这两个子对象对于x参数的加工逻辑是相同的,为了不让代码重复,所以就抽象出一个init的方法,用来处理这种共同的逻辑。 1 <script> 2 var url; 3 var people={ 4 init:function(x){ 5 return x}, 6 html:{ 7 play:function(x){alert(people.init(x));} 8 }, 9 video:{10 play:function(.
阅读全文
摘要:回到目录相关文章将不确定变为确定~transactionscope何时提升为分布式事务将不确定变为确定~transactionscope何时提升为分布式事务~续将不确定变为确定~transactionscope何时提升为分布式事务~再续(避免引起不必要的MSDTC) 对于frameworks的TransactionScope大家应该都很熟悉了,它是一个分布式事务的语句块,被包含起来的语句可以一起被提交,当出现异常后,统一进行回滚,这一切都是托管的。当WEB服务器没有开启MSDTC服务时,会出现这个提示:对于servers.msc中的MSDTC服务,它经常性的被挂掉注意一下:如果你的msdtc服
阅读全文
浙公网安备 33010602011771号