随笔分类 -  02.FrameWork/C#

摘要:1.WCF (Windows Communication Foundation):虽然WCF显然没有WPF或SilverLight那么吸引人,但是它却是在.NET框架下解决业务问题的基础。所以你今年至少要学习一门.NET的新技术,那你就选择WCF吧。2.ADO.NET (and LINQ):这是让你与数据层打交道的技术。并且LINQ提供了将各种数据组合起来的方法。如果以上两个技术你都不熟悉的话,那... 阅读全文
posted @ 2008-08-19 12:26 菩提树下的杨过 阅读(426) 评论(0) 推荐(0) 编辑
摘要:开发环境:vs2008英文版(SP1) + IIS + Windows2003整个解决方案有4个项目01.WCF ---Class Libary项目,用于生成WCF所需的类/接口文件02.BLL ---Class LIbary项目,演示用的业务逻辑层(仅做分层演示用,无实际意义)03.WEB ---Web Application,WCF服务将发布在这个项目中(即本例是把WCF宿主在IIS里)04.... 阅读全文
posted @ 2008-08-19 10:58 菩提树下的杨过 阅读(2642) 评论(1) 推荐(1) 编辑
摘要:新特性: Silverlight 2.0 Beta2 SDK 和工具 MVC 预览版本 #3 ASP.NET 扩展/动态数据预览 VC 2008 功能包 VB PowerPack 控件(2.0 和 3.0) Expression Studio 2 (RTM) SQL Server 2008 和 .NET Framework 3.5 SDK XSLT 探查器 VSTA 2.0 SDK Visual ... 阅读全文
posted @ 2008-08-16 17:44 菩提树下的杨过 阅读(1870) 评论(0) 推荐(0) 编辑
摘要:[代码]出错信息如下:方法“Boolean Contains(System.Guid)”不支持转换为 SQL。估计是.net现有的linq to sql还无法直接将IList某些类型(比如Guid类型)的Contains方法正确翻译为SQL语句研究了好久,无意间发现linq的100个官方例子中,有一个用数组实现in语句的例子,也是用Contains做的,于是把IList&l... 阅读全文
posted @ 2008-06-27 12:45 菩提树下的杨过 阅读(2837) 评论(1) 推荐(1) 编辑
摘要:原文:http://www.cnblogs.com/teddyma/archive/2006/08/14/inheritencemappinginorm.html实体继承是基于OO和关系型数据库软件系统设计中的一个重要主题。本文通过基于NBear的实例解析ORM中的实体继承体系映射的方方面面。本文涉及的内容包括:1. 单表继承体系2. 一实体一具体表3. 一实体一扩展表4. 接口实现映射vs基类继... 阅读全文
posted @ 2008-05-11 14:59 菩提树下的杨过 阅读(783) 评论(0) 推荐(0) 编辑
摘要:1.IN 语句尝试了很多次,好象linq死活不生成in语句,无奈只能做了下变换例,要找出"手机大类"以及"手机下属所有子类"的产品 (手机大类的ID为D0C37275-2279-4590-A679-C65A4F28918F)selectF_ID,F_Name,F_CLsIDFromT_ProductWhereF_ClsIDin(SelectF_IDFromT_ClassWhereF_ID='D0C... 阅读全文
posted @ 2008-04-09 14:41 菩提树下的杨过 阅读(4764) 评论(1) 推荐(0) 编辑
摘要:1.先声明:msmq3.0仅在winxp和win2003以上系统支持,如果windows vista系统,据说已经开始支持msmq4.0了 2.为什么要使用http协议发送消息 访问internet远程发送消息时,msmq2.0以上就已经开始支持tcp方式了,但是如果外网的服务器与发送端之间有防火墙或其它网络设备隔离,或者服务器上的tcp所需要的端口未开放,tcp方式将无法发送,而http协议使用... 阅读全文
posted @ 2008-04-09 13:47 菩提树下的杨过 阅读(2312) 评论(4) 推荐(0) 编辑
摘要:在手写sql的年代,如果想从sqlserver数据库随机取几条数据,可以利用order by NewId()轻松实现,要实现多表查询也可以用select * from A,B Where A.ID=B.ID做到,但这些功能到了linq to sql中如何实现呢?关键点:1.随机排序问题:可以用 Select(d=> new {NewId=new Guid()}).OrderBy(d=>... 阅读全文
posted @ 2008-03-28 16:00 菩提树下的杨过 阅读(2027) 评论(1) 推荐(0) 编辑
摘要:IQueryable<Product>query=db.Products;foreach(stringkeywordinkeywords){stringtemp=keyword;query=query.Where(p=>p.Description.Contains(temp));}与IQueryable<Product>query=db.Products;foreac... 阅读全文
posted @ 2008-03-27 22:23 菩提树下的杨过 阅读(1623) 评论(0) 推荐(0) 编辑
摘要:表达式目录树以数据形式表示语言级别代码。数据存储在树形结构中。表达式目录树中的每个节点都表示一个表达式,例如一个方法调用或诸如 x < y 的二元运算。下面的插图显示一个表达式及其表达式目录树形式的表示形式的示例。表达式的不同部分进行了颜色编码,以便与表达式目录树中相应的表达式目录树节点匹配。此外,还显示了不同类型的表达式目录树节点。下面的代码示例演示如何将表示 lambda 表达式 num... 阅读全文
posted @ 2008-03-27 22:16 菩提树下的杨过 阅读(1467) 评论(2) 推荐(0) 编辑
摘要:以下内容为菩提树下的杨过根据微软MSDN整理,转贴请注明出处MSDN对于Func<T, TResult>)的官方解释: 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。下面通过几个例子对比下,就容易知道其用法:以下例子演示了如何利用委托将字符串转化为大写:delegatestringConvertMethod(stringinString);privatestati... 阅读全文
posted @ 2008-03-26 21:00 菩提树下的杨过 阅读(741) 评论(0) 推荐(1) 编辑
摘要:借助老外写的一个扩展表达式的类,可以把上篇中的代码写得更优雅这是PredicateBuilder的源文件publicstaticclassPredicateBuilder...{publicstaticExpression<Func<T,bool>>True<T>()...{returnf=>true;}publicstaticExpression<... 阅读全文
posted @ 2008-03-25 22:34 菩提树下的杨过 阅读(5603) 评论(6) 推荐(0) 编辑
摘要:老外写的一个不错的扩展表达式的文章,原文地址:http://www.albahari.com/nutshell/predicatebuilder.html Dynamically Composing Expression PredicatesSuppose you wanted to write a LINQ to SQL query that implemented a keyword-styl... 阅读全文
posted @ 2008-03-25 22:16 菩提树下的杨过 阅读(935) 评论(2) 推荐(0) 编辑
摘要:linq to sql的多条件动态查询确实是一件头痛的事情,用表达式树或反射方法要写一大堆代码,有时候想想与其这么复杂,还不如回到手动sql拼接的年代,但是技术总是向前发展的,终归还是要在linq上解决这一问题,无意在网上发现一个还算比较简单的办法,分享一下:voidShowData(){using(DBDataContextdb=newDBDataContext(Database.Connect... 阅读全文
posted @ 2008-03-19 22:20 菩提树下的杨过 阅读(1035) 评论(0) 推荐(0) 编辑
摘要:在数据类型转换中,C#相对其它语言来说是比较严格的,要求显式进行数据转化。 为了操作方便,C#也提供了一种is操作符进行转换,十分方便,它自动检查时局是否和类型兼容,并返回结果。而且它不会抛出异常。如果对象引用为null,则is总返回false。if(cls1isClass2){Class2cls2=(Class2)cls1;}elseSystem.Console.WriteLine("Error... 阅读全文
posted @ 2008-03-11 13:00 菩提树下的杨过 阅读(378) 评论(0) 推荐(0) 编辑
摘要:原文地址: http://www.cnblogs.com/kevinwan/archive/2007/01/16/621869.html当我们开发C#代码的时候,经常碰到一个问题,有些class提供Close(),有些class提供Dispose(),那么Dispose和Close到底有什么区别?首先,Dispose和Close基本上应该是一样的。Close是为了那些不熟悉Dispose的开发者设... 阅读全文
posted @ 2008-03-09 17:09 菩提树下的杨过 阅读(602) 评论(0) 推荐(0) 编辑
摘要:本想写一点有关LINQ to SQL异步调用的话题,但是在这之前我想还是先写一篇文章来阐述一下使用异步操作的一些原则,避免有些朋友误用导致程序性能反而降低。这篇文章会讨论一下在.NET中有关异步操作话题,从理论出发结合实际,以澄清概念及避免误用为目标,并且最后提出常见的异步操作场景和使用案例。这样我们就可以知道什么时候该使用异步操作,什么时候会得不偿失。  那么我们先来确认一个概念,那就是R... 阅读全文
posted @ 2008-03-09 16:47 菩提树下的杨过 阅读(440) 评论(0) 推荐(0) 编辑
摘要:目前LINQ to SQL的资料不多——老赵的意思是,目前能找到的资料都难以摆脱“官方用法”的“阴影”。LINQ to SQL最权威的资料自然是MSDN,但是MSDN中的文档说明和实例总是显得“大开大阖”,依旧有清晰的“官方”烙印——这简直是一定的。不过从... 阅读全文
posted @ 2008-03-02 15:38 菩提树下的杨过 阅读(1293) 评论(0) 推荐(0) 编辑
摘要:下面的代码演示了如何利用Linq结合AspNetPager控件实现分页功能,以及如果利用Linq to Xml将当前页数据保存为Xmlusing(NorthWindDataContextdb=newNorthWindDataContext()){intPage=Utils.GetPageIndex();//取得当前页码vars=fromcindb.T_Testsorderbyc.F_AutoIds... 阅读全文
posted @ 2008-02-24 20:45 菩提树下的杨过 阅读(488) 评论(0) 推荐(0) 编辑
摘要:试用了几天linq,感觉确实方便,而且生成的sql也还不错,下面是几点体会1.几种常见的等效select写法var s = from c in ctx.T_Users select new { c.F_Name, c.F_Sex, c.F_Birthday, c.F_ID }这种写法对于初学者来说,最容易理解var s = ctx.T_Users.Select(p => new { p.F_... 阅读全文
posted @ 2008-02-24 20:42 菩提树下的杨过 阅读(404) 评论(0) 推荐(0) 编辑