04 2013 档案
摘要:回到目录这个问题有点意思,Razor的自动闭合性,导致JS代码不能直接与Razor代码混排,原来ASPX页面中,我们到处可见这种代码 <% if(Model!=null){ foreach (var item in Model.Res_ResourceProperty_Ext.GroupBy(i => i.PlatformID)) { string vidArr=""; string vidNameArr=""; foreach (var sub in ...
阅读全文
摘要:回到目录之前我写过对于普通枚举类型对象,输出Description特性信息的方法,今天主要来说一下,如何实现位域Flags枚举元素的Description信息的方法。对于一个普通枚举对象,它输出描述信息是这样的 public enum Status { [Description("正常")] Normal = -1, [Description("删除")] Deletet = 0, [Description("冻结")] Freezed = 1, } Status status = Stat...
阅读全文
摘要:回到目录之前写过三篇这个文章系列,都是围绕一个主题,那就是.net何时将transactionscope提升为分布式事务,今天我借用ThreadStatic特性,把这个知识点又证明了一下,下面总结一下:transactionscope文章:第二十六回 将不确定变为确定~transactionscope何时提升为分布式事务?第二十七回 将不确定变为确定~transactionscope何时提升为分布式事务~续第二十八回 将不确定变为确定~transactionscope何时提升为分布式事务~再续(避免引起不必要的MSDTC)ThreadStatic特性文章:基础才是重中之重~ThreadSta.
阅读全文
摘要:回到目录static修饰符我们不会陌生,它代表静态,可以修饰你的类,方法,字段和属性等等,今天主要说一个为静态字段加ThreadStatic特性会给程序代来什么样的变化。静态字段static field,我更习惯称它为“类的字段”,即它与类的具体实例无关,对于所有线程里,它的值都是一个,即它的唯一性。如代码:class Instance{ static DataContext context=new LinqToSql(conn); protected static DataContext {get{return context;}}}上面的代码中,context为静态字段,它的值在所有...
阅读全文
摘要:参考文章:http://www.w3school.com.cn在我们使用CSS时,经常看到margin:0 0,margin:0 5px,padding:0 5px 10px;而它们研究是什么含义呢,在WEB标准中,它们会有以下含义,它适合于CSS中的margin,padding,border-style等属性第一种情况,四个值都有,它们的含义如下属性:上 右 下 左第二种情况,只有三个值,它们的含义如下属性:上 右左 下第三种情况,只有两个值,它们的含义如下属性:上下 右左第四种情况,只有一个值,它们的含义如下属性:上下右左注意,如果属性值为0,可以不加单元直接是属性:0;如果不...
阅读全文
摘要:JQ也要面向对象,事实上,无论哪种开发语言,在开发功能时,都要把面向对象拿出来,用它的思想去干事,去理解事,面向对象会使问题简单化,清晰化,今天说两个概念“静态方法”与“实现方法”,这个在面向对象的语言中才有的东西,现在要把它搬到JQ中来了,呵呵。静态方法:某种类型才有的方法,这个方法干的事情只有类型本身有关,不受具体实例对象的影响,在C#语言中,它用static表示,VB中用share表示,而在jq中我们一般用$或者JQuery表示JQ类型,而静态方法扩展一般用$.extend。实例方法:当类型被表示为具体事物时,它被称为对象,或者实例对象,它所拥有的行为(方法)我们称为实例方法(一般书上不
阅读全文
摘要:团队开发,最重要的是什么?统一的规范,对于一个团队,在开发项目之前,必须要先告诉大家项目的规范是什么,而开发人员在实际当中再去执行这个规范,对于规范事实上是个很宏观的概念,它可能有很多版本,呵呵,如代码书写规范,代码重构规范,代码整体布局规范等等.今天主要说一下如何建立属于自己团队的代码模块第一步,打开VS文件模块安装目录,我们以"建立类文件"为例,一般是:C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\2052打开calss.zip,然后打开class.c
阅读全文
摘要:知方可补不足,不知永远为不知!我很喜欢这句格言,说的不错,我们在人生的旅途中,永远不可能对所有知识了如指掌,但我们可以做到尽量多知道些,当你知道它了,它将会成为你的知道领域,从而缩小了你的不知道领域的范围.今天主要说一下Web主线程的问题,这个东西你在网上可能找不到什么结果,你搜索它,可能也搜不到相关知识,不知道为何没什么有去说它,虽然没人说,但我还是要说说,因为我觉得,开发人员了解一些这方面的知识还是很有必要的.当然网站被用户加载后,可能你会打开/product/index这种页面,它将会在服务器端产生一个线程,这个线程我们称为主线程,当然你的程序中也可以通过Thread类建立其它线程,但只
阅读全文
摘要:对于小型项目来说,配置信息可以通过appSettings进行配置,而如果配置信息太多,appSettings显得有些乱,而且在开发人员调用时,也不够友好,节点名称很容易写错,这时,我们有几种解决方案1 自己开发一个配置信息持久化类,用来管理配置信息,并提供面向对象的支持2 使用.net自带的configSections,将配置信息分块管理,并提供实体类,便于开发人员友好的去使用它本文主要说说第二种方案,它由实体类,实体类工厂及配置文件三个部分,看代码:实体类设计:namespace Configer{ /// <summary> /// 网站信息配置节点 /// </summ
阅读全文
摘要:回到目录在.config文件中,定义了一些节点,可能是connectionStrings,appSettings,configSections之后进行读取配置节点的信息,结果出现了异常,配置系统未能初始化非常奇怪的问题,在网上找了一节文章,终于找到了答案,还是自己书写的问题,在MSDN上说的很清楚,...
阅读全文
摘要:对于多对多关系,我们需要引入第三张表,一般我们称它为关系表,关系表不需要自已的主键,而是通过相关表的主键进行组合,我们一般称为多主键,下面看一下菜单表与角色表,它们是一种多对多关系的结构。一般地,我们手动更新多对多关系表时,方法是:删除原来关系,插入新关系,而EF的作法不是这样,它是先比较现在有集合与数据表里的内容是否相同,如果相同不进行操作,如果没有就插入,如果有就删除,性能上有了一个提升!在EF的模型中,这种多对多的纯关系把不会出现在模型里,而是直接用实体集合代替,这样关系更直接了,觉得这种设计不错在MVC架构开发中,需要注意的是,你的集合对象的表单元素名称必须写完整,如果是role下面的
阅读全文
摘要:回到目录单表一对多关系很常见,它是一种树形结构,如系统菜单表,部门表,分类表,这些都可以做成单表一对多关系,而这些表做成一对多关系后,如果通过EntityFramework进行插入操作时,会很方便,EF会自动为我们确实上级ID,对于操作的性能也是可以接受的,与数据库建立一次链接,发一批指定,这是我们可以接受的,虽然在性能上不是最佳的,但综合对比来看,它即是最佳的。(结合对比=程序性能+开发人员工时+程序扩展性+程序可读性)OK,我们以菜单表为例,说一下这个菜单表初始化的过程对于菜单实体的赋值,看一下代码:var menu = new WebManageMenus ...
阅读全文
摘要:回到目录网站bin目录下的程序集一般由系统项目,项目引用的外部DLL及外挂DLL组成,它们在网站运行时会自动加载,这一点很重要,项目本身DLL及项目引入的DLL会自动加载,这没有问题,而外挂在bin目录的DLL也会自动加载,这很重要,因为,它可以使我们的应用程序更加灵活,在开发通用功能上,也显得扩展性更强!一个例子,比如一个HttpModule,它是一个通用的功能,向页面添加一些缓存过期的共用信息,这对于你所有网站都是共用的,这时,可以建立一个HttpModule项目,它代码可能是这样namespace TestHttpModule{ public class SEOModule : I...
阅读全文
浙公网安备 33010602011771号