eXpressApp Framework 之DC技术入门系列(2)DC中的实体关系之一对多关系
在现实世界里面,我们遇到很多种错综复杂的关系,这些关系概括起来主要分为以下几种关系:
一对多关系,多对多关系,一对一关系,这些关系是在关系型数据库应用系统中应用广泛,DC作为一种ORM技术,它又是如何实现的呢?这里的一对一关系很简单,我就不介绍了,重点介绍复杂的一对多和多对多关系的实现,我在上一篇文章中只实现了货品资料这一个实体,作为一个完整的采购系统,还要涉及到采购询价,采购单,采购收货以及供应
http://cyqdata.cn/cnblogs/article-detail-36656
NVelocity在项目中的使用
本文要说明的是如果要在项目中加入NVelocity引擎模板。而且在使用和操作起来更加的方便!
NVelocity是一个基于.NET的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template
http://cyqdata.cn/cnblogs/article-detail-36644
谁做了程序员眼中的程序员
从入行以来,听到来自于行内和行外对程序员这个职位的争议从来就没有停止过,有对这个行业尤其在中国的前景的担忧,有外界对程序员的看法,有业内的自讽。故而生出了很多程序员的代名词,"张江男"、"IT民工"、"码农"、"码畜"等等,这些因素也时刻影响着这个行业的发展,导致与有很多后生代人才们并不能坚持下去,那么站在程序员的角度来看,程序员要做到什么样一种程度才是能让行内外和自己满意的程序员了。
在刚入
http://cyqdata.cn/cnblogs/article-detail-36634
eXpressApp Framework 之DC技术入门系列(1)用DC实现现实中的实体
上一篇文章我介绍了DC并引入了官方对DC描述和特性,下面开始,我就来以实际的代码项目来逐步介绍一个用DC实现的采购系统,
首先,我们先用微软IDE工具VS2005/2008/2010来建立一个XAF的应用程序,我这里用vs2010来建立一个xaf的winform桌面应用程序MyPurchaseSystem,如下图:
为了方便组织DC文件,我这里把DC文件统一放入Entities文件
http://cyqdata.cn/cnblogs/article-detail-36619
.NET 中的委托
1.1.1 定义
委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其他任何方法一样,具有参数和返回值,如下面的示例所示:
//Code in C#
public delegate int PerformCalculation(int x, int y);
与委托的签名(由返回类型和参数组成)匹配的任何方法都可以分配给该
http://cyqdata.cn/cnblogs/article-detail-36616
.Net 4.0 Parallel 编程(九)Task中的数据共享(下)
在上篇Post中我们看过了几种常用的同步类型,本篇文章会介绍下申明性的同步的实现以及对于集合类型数据共享的问题,首先看下申明性同步的实现。 申明性同步 我们可以通过使用Synchronization 特性来标识一个类,从而使一个类型的字段以及方法都实现同步化。在使用Synchronization 时,我们需要将我们的目标同步的类继承于System.ContextBoundObject类型。我们
http://cyqdata.cn/cnblogs/article-detail-36538
质疑贴——对《新版微软一站式示例代码库》中的一个示例的质疑
在“新版微软一站式示例代码库发布 - 绑定第三版示例代码浏览器”中,有若干最新的asp.net的示例。
对其中的一个示例的源代码研究了一番。觉得有问题,故在此阐述本人的疑问,望广大网友赐教。
先把这个示例的说明贴在下方。
CSASPNETReverseAJAX, VBASPNETReverseAJAX
Downloads CSASPNETReverseA
http://cyqdata.cn/cnblogs/article-detail-36534
GET,POST 在Ajax中的应用
昨天项目经理让我做了一块小功能,是关于异步刷新页面内容的,之前对Ajax的操作仅限于post的请求操作,会应用但是说到具体的原理就有点模糊了为了搞明白其原理,遂写下这篇随笔:
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这
样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,
http://cyqdata.cn/cnblogs/article-detail-36525
SlickEdit 编辑器中的王者
今天一个朋友告诉我,他感觉SlickEdit一点也不好用。其实是他对SlickEdit还不熟悉。如果用熟了的话是非常好用的。就是上手有点难度,这点跟Total Command一样!不好上手,但是一旦用熟之后,就是利器! &nbs
http://cyqdata.cn/cnblogs/article-detail-36507
浅谈C/C++中的顺序点和副作用
一.副作用(side effect)
表达式有两种功能:每个表达式都产生一个值( value ),同时可能包含副作用( side effect )。副作用是指改变了某些变量的值。
如:
1:20 &nb
http://cyqdata.cn/cnblogs/article-detail-36505
javascript中的对象查找
近期群里常有人提一些简单的问题,比如发一段代码乱七八糟的代码,然后说里面某个变量是什么,比如这里就有个很好的例子:
function fn(arg) {
alert(this.arg);
alert(this);
}
fn(123);
var o = { fn: fn };
o.fn(123);
然后就可能有这样的问题:
为什么this.arg是undefined?为什么2次调
http://cyqdata.cn/cnblogs/article-detail-36496
浅谈C和C++中的const关键字
一.C语言中的const
const是C语言中保留的一个关键字,它用来限定一个变量是只读的,即不可变的。程序中使用const可以在一定程度上提高程序的健壮性,但是程序中使用过多的const,可能在对代码的阅读时增加一定的难度。
(1)用const修饰一般变量
http://cyqdata.cn/cnblogs/article-detail-36434
Silverlight 5 beta新特性探索系列:3.Silverlight5中的文字增进控制【附带实例源码】
在Silverlight 5中新增了CharacterSpacing属性对文字间距进行控制,增加了RichTextBoxOverflow控件以灵活的对大量文字进行合理的排版显示。
一、CharacterS
http://cyqdata.cn/cnblogs/article-detail-36419
设计模式(6)-装饰器(认识程序中的装饰器)
之前已经看过装饰器模式,但是感觉不是很清晰,但是有一种情况下出的代码,一定是装饰器。
Widget* aWidget = new BorderDecorator(
new BorderDecorator(
new ScrollDecorator(
new TextField( 80, 24 ))));
可以看到,层层嵌套,每个类都可以按照一定的顺序嵌套多次。
比如将顺序改为如下:
http://cyqdata.cn/cnblogs/article-detail-36414
overflow:hidden在各个浏览器中的应用
首先看看w3c的解释: 这个属性定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。因此,有可能即使元素框中可以放下所有内容也会出现滚动条。理解这句话的深刻含义,可以看出有一个包含,包裹的意思。它的值可能为值描述visible默认值。内容不会被修剪,会呈现在元素框之外。hidden内容会被修剪,并且其余内容是不可见的。scroll内容会被修剪,但
http://cyqdata.cn/cnblogs/article-detail-36346
深入分析line-height 在浏览器中的特性以及最佳实践
首先看2个问题: 1)line-height和font-size 有联系吗,什么联系? 2)line-height的继承特性有什么特殊性?如果你对这2个问题很清楚的话,你可以跳过本文。 首先看看w3c的解释:line-height 属性设置行间的距离(行高,行间距)。 该属性会影响行框的布局。在应用到一个块级元素时,它定义了该元素中基线之间的最小距离而不是最大距离。line-height
http://cyqdata.cn/cnblogs/article-detail-36333
调研CSS选择器在浏览器中的支持情况
网上有很多这样的信息,很多的图表对各个浏览器进行比较,关于特性的支持,其实有些不全面,本文就日常常见的一些css选择器进行一个总结(本文在标准模式下)。1)关于:active,:link,:hover,:visited伪类在css1的规范中,这四个伪类仅作用在a 标签上。在后来的所有浏览器中都是支持a标签的这个属性。所以为了鼠标特效能够支持各种浏览器,a标签是一个首选的标签,利用display:b
http://cyqdata.cn/cnblogs/article-detail-36298
关于数据库设计中的GUID和DATETIME(TIMESTAMP)字段
经过两天对于实现应用程序接触结构跨数据库系统的修改,在设计数据库过程中,建议重视两个字段类型,一个是GUID类型,一个是DATETIME(TIMESTAMP)类型。
1.在需要数据库分发和数据库复制的架构中,为了保证数据的一致性,我们经常使用GUID字段类型,但GUID类型只存在于SQL Server数据库对象中,在Oracle中没有此数据类型,需要向RAW或CHAR进行转换。
2.对于需要保证数
http://cyqdata.cn/cnblogs/article-detail-36238
javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
在javascript学习笔记(八)中,我们主要学习了在使用javascript面向对象编程时,如何创建对象及添加对象的属性和方法。在使用面向对象编程时,对象间的继承关系自然少不了!而原型正是实现javascript继承的很重要的一种方法!
我们首先来看以下代码:
function person(name, age) {
this.name = name;
this.age = age
http://cyqdata.cn/cnblogs/article-detail-36223
MVC3缓存之三:MVC3中的局部缓存(Partial Page)
在之前的文章MVC3缓存之二:页面缓存中的局部动态中,没有注意到MVC3的版本中对输出缓存进行了修改,园友的评论中提及了此问题,所以又去抽时间看了下局部缓存的解决方案。
最后发现在发布的MVC3版本中,新增了一个叫做Partial Page的东西,即可以对载入到当前页面的另外的一个View进行缓存后输出,这与我们之前讨论的局部动态刚好相反了,即之前我们进行这个页面的缓存,然后对局部进行动态输出,现
http://cyqdata.cn/cnblogs/article-detail-36218