C#
ciaos
这个作者很懒,什么都没留下…
展开
-
VS2010的单元测试,很好用
TDD(测试驱动开发)一直都是敏捷里一个重要的方法,毕竟经过测试用例检验过的代码总会让人更加放心,关于软件测试我们有白盒测试,黑盒测试,灰盒测试等许多手段,其中单元测试更是必不可少而且非常有效。VS.net环境的单元测试是做得比较智能化而且好用的,我们就来试试吧。首先,打开VS2010,创建一个简单的C#控制台程序,输入如下代码:(简单的加法减法)using System;using原创 2012-06-11 09:28:32 · 3445 阅读 · 1 评论 -
WebRequest实现文件下载的一个RFC规范问题
前几天写一个C#的文件下载代码,实现起来也是非常容易,.net编程就是方便简洁 WebRequest req = WebRequest.Create(url); WebResponse pos = req.GetResponse(); long totalbytes = pos.ContentLength;原创 2012-05-07 16:48:51 · 1326 阅读 · 1 评论 -
C#中的Invoke
在用.NET Framework框架的WinForm构建GUI程序界面时,如果要在控件的事件响应函数中改变控件的状态,例如:某个按钮上的文本原先叫“打开”,单击之后按钮上的文本显示“关闭”,初学者往往会想当然地这么写:void ButtonOnClick(object sender,EventArgs e){ button.Text="关闭";}这样的写法运行程转载 2012-07-09 10:28:18 · 1149 阅读 · 0 评论 -
C#使用yield实现高效查询
Yield是在学习Lua的协程时了解的概念,在C#中也有这样的关键词(效果和用法也很类似),官方介绍说是表示所在的函数是个“迭代阻塞”,一般需要结合return语句返回给迭代器一个具体值,还可以结合break语句灵活地表示迭代的结束。using System;using System.Collections.Generic;using System.Linq;using Syst原创 2012-07-17 15:51:00 · 1495 阅读 · 0 评论 -
C#的TCP/UDP通信编程
C#提供了方便强大的各种网络编程类,直接上代码了。A,TCP通信服务器端class Program{ public static int port = 1987; public static string host = "127.0.0.1"; static void Main(string[] args) { try原创 2012-07-17 15:51:25 · 1190 阅读 · 0 评论 -
C#委托delegate使用
Delegate是.net framework 2.0引入的一种数据结构,通过它引用静态方法或类的实例以及类的实例方法。(我的理解就是个函数指针,但是是类型安全的,不能隐式转换)using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace TestDelega原创 2012-07-17 15:50:19 · 587 阅读 · 0 评论 -
asp调用asp.net生成的动态链接库
这几天在做一些asp的工作,发现这个语言真的很不好用,业务处理能力太差了,难怪微软急忙推出asp.net来作为它的替代品。可是asp作为一个流行这么多年的语言,已经占据不少的市场份额,asp.net作为一个全新的平台和asp很不一样难做移植,那我们能不能用asp直接调用.net的库呢,下面来展示一个可行的解决方案:A,首先用VS2010新建一个C#类库项目,我们在里面定义一个测试类:u原创 2012-06-14 14:30:54 · 1360 阅读 · 0 评论 -
C#不让主线程UI挂起
编写C#窗体程序中如果遇到大量计算或者网络通信,UI很容易就僵死了,如下面的例子。//阻塞5秒钟,窗体才有反应public static int calc_res() { Thread.Sleep(5000); return 5;}private void calc_Click(object sender, EventArgs e){ int res = calc_res()原创 2012-07-17 15:51:38 · 1068 阅读 · 0 评论