.Net/C#/APSX
文章平均质量分 66
菩提树下的杨过
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃
展开
-
用JS + WCF打造轻量级WebPart
自打.net2.0起,ms就推出了webPart功能,用它可以轻松开发出具有web2.0风格的个性化网站功能,比如拖放,定制标题栏等,但是WebPart的设计是属于重量级的,每次拖动都会引起页面回发,导致数据库读写以及大量的数据传输(即使在最外层套一个MajicAjax之类的,也是如此),另外WebPart在非IE标准浏览器上有些功能也不能正常使用。而网上流传的众多JS实现的特效功能中,已经有很多原创 2008-09-20 14:34:00 · 999 阅读 · 1 评论 -
[c#]Webservice中如何实现方法重载(overload)以及如何传送不能序列化的对象作参数
1。Webservice中的方法重载问题(1)在要重载的WebMethod上打个MessageName标签比如:[WebMethod(MessageName = "HelloWorld1")]public string HelloWorld(){ return "HelloWorld";}[WebMethod(MessageName = "HelloWorld2")]public strin原创 2008-04-17 21:25:00 · 1690 阅读 · 0 评论 -
[转贴]ASP.Net MVC框架配置与分析
原文:http://www.cnblogs.com/birdshover/archive/2008/01/19/1043749.html前几年的时候ASP.Net就有MVC的概念,实际上就是我们熟悉的WebForm开发模型。1、Model层与视图无关,并且只与数据库相关:伪代码:pulic class Model{ pulic DataSet ds() {转载 2008-04-10 21:59:00 · 1047 阅读 · 0 评论 -
[原创]web application中使用Profile应该注意的问题
1.如何在web application中正确使用Profileweb application与website的一个不同之处在于,web application中无法象website中那样,直接用类似Label1.Text = Profile.XXX;这样的方式引用Profile(编译会直接报错)解决办法有二种:(1)读取Profile值的代码改为: 1HttpContext.Curren原创 2008-04-12 23:02:00 · 2969 阅读 · 3 评论 -
[原创]在msmq3.0中使用http协议发送消息
1.先声明:msmq3.0仅在winxp和win2003以上系统支持,如果windows vista系统,据说已经开始支持msmq4.0了 2.为什么要使用http协议发送消息 访问internet远程发送消息时,msmq2.0以上就已经开始支持tcp方式了,但是如果外网的服务器与发送端之间有防火墙或其它网络设备隔离,或者服务器上的tcp所需要的端口未开放,tcp方式将无法发送,而http协议原创 2008-04-09 13:52:00 · 1338 阅读 · 0 评论 -
c#:winform鼠标拖动窗口大小时,设定窗口最小尺寸
winform 程序运行过程中,用户用鼠标拖动窗体大小时,如将窗体调整得极小,可能窗体上的控件就面目全非(或看不到了),用下面的代码可以设定窗口的最小尺寸,以防止这种情况private void Form1_ResizeEnd(object sender, EventArgs e) { //this.Text = "2width:" + this.Width原创 2008-01-05 23:48:00 · 2242 阅读 · 3 评论 -
在非SqlServer数据库上实现MemberShip和Role功能(自定义MemberShipProvider和RoleProvider)
默认情况下,.Net网站上的MemberShip和Role功能只能用于SqlServer,如果要在其它数据库,比如Access,Oracle上使用该功能该怎么办呢?其实MS早就为我们考虑到了,用户只要从MemberShipProvider和RoleProvider派生自己的Provider类,并实现相关的方法和属性就可以了,其实ASPX中的MemberShip功能就是这二个抽象类在SqlServe原创 2008-01-05 22:25:00 · 978 阅读 · 0 评论 -
利用Boost影响Lucene查询结果的排序
以下代码在Lucene2.1下通过,主要是通过设置Document的Boost来影响文档的权重,以达到控制查询结果顺序的目的(前提是不利用Sort排序的情况下):private void btnSearch_Click(object sender, EventArgs e) { RAMDirectory ramDir = new RAMDirectory()原创 2008-01-03 22:57:00 · 1129 阅读 · 0 评论 -
Lucene:QueryParser中操作符的疑惑
晚上在测试Lucene搜索时,对于 AND 与 + 的区别研究了下索引库中有四条记录,分别是no:300900002071 name:情侣装*休闲女装 no:300900002069 name:情侣装*休闲男装no:400000480418 name:情侣完美坠no:400000480155 name:天然翡翠项链 如果用以下字符串来搜索 (name:情侣) + (no:40000原创 2008-01-04 08:49:00 · 1255 阅读 · 0 评论 -
linq to sql取出随机记录/多表查询/将查询出的结果生成xml
在手写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=>d.Ne原创 2008-03-28 15:53:00 · 2233 阅读 · 0 评论 -
linq to sql的多条件动态查询(下)
借助老外写的一个扩展表达式的类,可以把上篇中的代码写得更优雅这是PredicateBuilder的源文件 public static class PredicateBuilder ...{ public static ExpressionFuncT, bool>> TrueT> () ...{ return f => true; } public stat原创 2008-03-25 22:21:00 · 1202 阅读 · 0 评论 -
Dynamically Composing Expression Predicates
老外写的一个不错的扩展表达式的文章,原文地址:http://www.albahari.com/nutshell/predicatebuilder.html Dynamically Composing Expression PredicatesSuppose you wanted to write a LINQ to SQL query that implemented a keyword-转载 2008-03-25 22:00:00 · 972 阅读 · 0 评论 -
IQueryable与foreach的困惑?
IQueryableProduct> query = db.Products;foreach (string keyword in keywords){ string temp = keyword; query = query.Where(p => p.Description.Contains(temp));}与 IQueryableProduct> query = db.Pr原创 2008-03-27 22:30:00 · 2318 阅读 · 0 评论 -
[msdn]Expression Tree表达式目录树
表达式目录树以数据形式表示语言级别代码。数据存储在树形结构中。表达式目录树中的每个节点都表示一个表达式,例如一个方法调用或诸如 x 的二元运算。下面的插图显示一个表达式及其表达式目录树形式的表示形式的示例。表达式的不同部分进行了颜色编码,以便与表达式目录树中相应的表达式目录树节点匹配。此外,还显示了不同类型的表达式目录树节点。下面的代码示例演示如何将表示 lambda 表达式 num转载 2008-03-27 22:29:00 · 2053 阅读 · 0 评论 -
利用Lucene打造站内搜索引擎的思路
1.为什么要用Lucene,而不用直接从数据库里搜索记录?主要是考虑到几个因素:(1)性能问题,Lucene是基于文件索引的搜索机制,性能要比数据库里检索更快,特别是数据量大的时候两者区别比较明显。数据库用Select检索时,默认在执行sql语句时,会对表锁定,直到查询完成;(2)目前很多网站,都已经将页面静态化,这种情况下,直接用生成的文件编制索引,再利用Lucene来检索,可以不用查询数据库,原创 2008-01-01 22:38:00 · 637 阅读 · 0 评论 -
[转贴]C#中实现窗体间传值
1、VS 2005的Visual C# Windows应用程序和Visual C#智能设备Pocket PC 2003设备应用程序。假设我们需要点击主窗体FMMain中的某一个按钮时打开子窗体FMChild并将某一个值传给子窗体FMChild,一般情况下,我们点击按钮显示子窗体FMChild的代码为:转载 2008-01-01 22:37:00 · 908 阅读 · 0 评论 -
[原创]Func〈T, TResult〉 泛型委托 以及演变历程(整理自MSDN)
以下内容为菩提树下的杨过根据微软MSDN整理,转贴请注明出处 MSDN对于Func)的官方解释: 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。 下面通过几个例子对比下,就容易知道其用法:以下例子演示了如何利用委托将字符串转化为大写: delegate string ConvertMethod(string inString); private s原创 2008-03-26 20:55:00 · 1398 阅读 · 0 评论 -
遍历文件夹所有文件(示例)
以下代码将遍历c:/temp下的所有文件,并将结果返回到ListBox中//要引用using System.Collections.Specialized;public StringCollection GetAllFiles(string rootdir) { StringCollection result = new StringCollection()原创 2007-12-29 14:35:00 · 548 阅读 · 0 评论 -
(Head First 设计模式)学习笔记(1)
以下内容转载请注明来自"菩提树下的杨过(http://blog.sqlsky.com)" 把书中开篇duck问题的代码翻译成了c#版: 概述:某游戏公司要设计一款鸭子的游戏,里面有各种各样的鸭子,有些会飞,有些会叫,但都会游泳。而且不同种类的鸭子,飞行方式和叫唤的方式各不相同以下代码体现了二个oo原则:1.找出应用中可能需要变化之外,把它们独立出来,不要和那些不需要变化的代码混在一起原创 2008-05-08 22:55:00 · 609 阅读 · 0 评论 -
(Head First 设计模式)学习笔记(2) --观察者模式(气象站实例)
以下内容转载请注明来自"菩提树下的杨过(http://blog.sqlsky.com)"应用概述:某气象站通过传感器实时测量气温/湿度/压力等数据,要求设计一个系统,能让多种类型的公告栏自动更新这些数据(本例中有二类公告板:实时显示气温/温度公告板,动态统计最高/最低气温公告板)解释:应用观察者模式,把气温数据做为一个主题(也称为可观察者),让其它公告板当做观察者,通过订阅主题(也称通过观察"原创 2008-05-11 22:43:00 · 741 阅读 · 0 评论 -
(Head First 设计模式)学习笔记(3) --装饰者模式(StarBuzz咖啡店实例)
以下内容转载请注明来自"菩提树下的杨过(http://blog.sqlsky.com)"应用概述:StarBuzz咖啡店有很多饮料,每种饮料都可以根据客户需要加一些调料,比如深培咖啡可以加摩卡(或双倍摩卡),而且某些饮料可以分为大中小杯,根据容量不同,售价不同,而且调料的价格根据饮料的容量不同而不同(比如大杯咖啡加糖要1元,中杯咖啡加糖要0.9元等)又一设计原则:对扩展开放,对修改关闭(本原创 2008-05-22 21:48:00 · 928 阅读 · 0 评论 -
[方法“Boolean Contains(System.Guid)”不支持转换为 SQL]的解决办法
Guid ClsID = new Guid("d4ee9c52-8d68-4f33-9485-0926281c78ac");IList Ids = WebProduct.GetAllChildByID(ClsID);var query = db.T_Products.Where(p => Ids.Contains((Guid)p.F_ClsID));//这一句编译时无错,但是一执行原创 2008-06-27 12:50:00 · 2326 阅读 · 1 评论 -
ExtJs学习笔记(22)-XTemplate + WCF 打造无刷新数据分页
ExtJs的Grid组件虽然不管从哪一方面来讲,都称得上是很好很强大,但是总会有一些应用场景并不需要这么多功能,比如网站的留言列表,开发者只想要一个简单的或列表而已,这时候XTemplate就显得很有用了。本文将讲解如何用XTemplate结合WCF与服务端交互,生成数据列表,同时加上无刷新分页功能(默认情况下ExtJs并没有为XTemplate并没有提供分页功能)1.先做一些准备工作,写一个通用原创 2008-09-10 16:32:00 · 1896 阅读 · 0 评论 -
ExtJs学习笔记(21)-使用XTemplate结合WCF显示数据
个人认为,XTemplate是ExtJs中最灵活的用来显示数据的组件,有点类似aspx中的Repeater控件,显示数据的模板完全可以由用户以html方式来定制. 先给一个官方的静态示例(稍微改了下),代码并不复杂,关键的地方,我已经注释了Code highlighting produced by Actipro CodeHighlighter (freeware)http://www原创 2008-09-09 22:28:00 · 767 阅读 · 0 评论 -
linq to sql中慎用Where(Func predicate),小心被Linq给"骗"了!
近日在一个大型Web项目中,采用Linq to Sql替换原来的sqlcommand/sqldatareader方式来获取数据,上线后刚开始一切正常,但是随着访问量的增加,网站明显慢了很多,监测服务器CPU占用率/内存使用情况等性能指标却发现均在正常范围内,无意中在SqlServer Profier中跟踪数据库执行的sql语句时,发现有大量语句直接将整个表的数据全部提取出来了,而非仅返回分页中的当原创 2008-09-06 12:05:00 · 2184 阅读 · 1 评论 -
ExtJs学习笔记(20)-利用ExtJs的Ajax与服务端利用WCF交互
ExtJs是一套非常不错的javascript UI库(第一次接触ExtJs的,可到官方网站http://www.extjs.com/deploy/dev/examples/samples.html看下示例。相信不少人会心动的),不仅组件丰富,效果漂亮,而且ExtJs集成的Ajax功能可以方便的与.Net的WCF进行交互.这里我们将演示ExtJs的FormPanel从WCF加载数据,以及如何提原创 2008-09-04 21:33:00 · 1104 阅读 · 0 评论 -
ExtJs学习笔记(3)_GridPanel[XML做数据源]
这一节,将学习到除了用JSON做GridPanel的数据源外,还可以使用XML 一。静态示例1.xml文件内容: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->xml version="1.0" encoding="UTF-8原创 2008-08-29 10:18:00 · 786 阅读 · 1 评论 -
ExtJs学习笔记(5)_Ajax示例
ExtJs对于Ajax的使用非常简单,看下面的代码:1.Html页:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht原创 2008-08-30 09:36:00 · 540 阅读 · 0 评论 -
ExtJs学习笔记(2)_Basic GridPanel[基本网格]
这一节,将学习如何使用网络上最常见的UI控件_Grid 1.静态示例:静态示例其实官方下载包里,就有sample,这里只贴出代码,后面的如何跟WCF结合,做出动态版的Grid才是本文重点Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/原创 2008-08-29 10:17:00 · 822 阅读 · 0 评论 -
ExtJs学习笔记(1)_Hello World!
extjs最新版,可从http://www.extjs.com/官方网下载,下载包解压后docs目录里,就是API文档,samples目录里是示例 今天接触了下ExtJs,确实不错,先来一个最经典的Hello World. Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.Co原创 2008-08-29 10:16:00 · 699 阅读 · 0 评论 -
[jillzhang]ExtJs与WCF交互:生成树 --数据库版补充
原文见:http://www.cnblogs.com/jillzhang/archive/2008/06/15/1222233.html已经讲得很清楚,本文只是将该篇WCF的方法换成数据库版1.分类表T_Class主要结构F_ID 主键IDF_ClassName 分类名称F_ParentID 父类ID 2.扩展treeNode类Code highlighting pro原创 2008-08-29 10:08:00 · 564 阅读 · 0 评论 -
ExtJs学习笔记(6)_可分页的GridPanel
一.WCF部分1.通过查看官方的示例得知,分页数据源需要一个记录总数值,为保持通用性,这里借鉴jillZhang的文章http://www.cnblogs.com/jillzhang/archive/2008/06/29/1232086.html,把他写的通用类PageData拿过来直接用Code highlighting produced by Actipro CodeHighligh原创 2008-08-30 21:32:00 · 879 阅读 · 0 评论 -
ExtJs学习笔记(4)_EditorGridPanel(可编辑的网格控件)
这一节,我们将看到ExtJs功能强大的可编辑网格控件,几乎与VS.Net的GridView功能一样了,但是ExtJs的可是纯JS的UI 一.静态示例(改自ExtJs的官方示例)a.因为我们是采用xml做为数据源的,这里贴出xml的内容CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://原创 2008-08-30 09:33:00 · 1497 阅读 · 0 评论 -
[转自雨痕]LINQ to SQL - Delay Loaded
原文: http://www.rainsts.net/article.asp?id=550 对 ORM 而言,延迟加载(也叫 Lazy Loading)是必须的,毕竟当我们只是获取用户基本信息时,总不能动不动就返回大段的用户个人简介不是。在 VS 2008 O/R Designer 中,很容易找到 Delay Loaded 的设置。只是当我在自动生成的代码中找寻这个设置时,着实转载 2008-08-29 10:00:00 · 601 阅读 · 0 评论 -
再谈web.config/app.config敏感数据加/解密的二种方法
转载请注明来自"菩提树下的杨过"-http://www.cnblogs.com/yjmyzz/archive/2008/08/22/1274395.html 1.利用代码加解密 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using原创 2008-08-22 21:06:00 · 952 阅读 · 0 评论 -
[原创]x.509证书在WCF中的应用(Web/IIS篇)
在上一篇"x.509证书在WCF中的应用(CS篇)"里,我们知道了如何在应用程序中,利用x.509证书来验证WCF的消息安全(没看过的朋友建议先看下,地址http://www.cnblogs.com/yjmyzz/archive/2008/08/20/1272550.html),这一篇我们将尝试把x.509证书放到IIS里来验证WCF。WCF宿主在IIS和普通应用程序里,原理虽然没什么不同,但原创 2008-08-22 10:01:00 · 1774 阅读 · 0 评论 -
[原创]x.509证书在WCF中的应用(CS篇)
为什么要用x.509证书?WCF的服务端和客户端之间,如果不作任何安全处理(即服务端的),则所有传输的消息将以明文方式满天飞,在internet/intranet环境下无疑是很不安全的,这就是用证书的目的。(当然WCF还有其它安全机制,比如最常见的UserName方式,但通常每次都要从数据库读取用户名/密码信息进行验证,比较麻烦,开销也大,个人觉得还是证书最为方便)--关于x.509证书的基本原创 2008-08-20 20:46:00 · 1223 阅读 · 1 评论 -
[原创]WCF入门级使用教程(转载请注明出处)
开发环境:vs2008英文版(SP1) + IIS + Windows2003 整个解决方案有4个项目01.WCF ---Class Libary项目,用于生成WCF所需的类/接口文件02.BLL ---Class LIbary项目,演示用的业务逻辑层(仅做分层演示用,无实际意义)03.WEB ---Web Application,WCF服务将发布在这个项目中(即本例是把WCF宿主在IIS原创 2008-08-19 11:15:00 · 1226 阅读 · 1 评论 -
ModalPopupExtender用法示例
aspx页面@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Test_Default" %>@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>DOCTY原创 2008-03-19 22:19:00 · 1654 阅读 · 2 评论 -
如何对动态创建控件进行验证以及在Ajax环境中的使用
首先给一个常规的动态创建控件,并进行验证的代码[前端aspx代码]@ Page Language="C#" AutoEventWireup="true" CodeFile="Test.aspx.cs" Inherits="Test" %>DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3原创 2007-12-23 21:59:00 · 726 阅读 · 0 评论