huakaiyueluo

导航

随笔分类 -  c#语言

c#中,DataTable 过滤重复行
摘要:虽然网上有很多DataTable过滤重复行的方法,但是本菜还是认为自己写的这个方法最靠谱,这里的参数是传递的DataTable值,返回的是一个已经过滤相同字段StuId,ExamNum的DataTable,有遇到这个问题的童鞋可以直接拿过去用DataTable FilterRepeatTable(D... 阅读全文

posted @ 2015-12-09 15:57 huakaiyueluo 阅读(3518) 评论(7) 推荐(2) 编辑

c#(winform,webform通用)利用npoi将xls文件复制为xlsx文件(excel的修改,保存,包括excel2003-office2007+的处理)
摘要:1.程序界面 每次需要处理excel文件的时候,都是去百度找方案,真是气一头火,今天好好总结一下,下次就不用度娘了。 我是用winform来试验的,因为winform比较方便测试,实际上只要是在.net平台上,c#写的程序,都是通用的。 2.所需dll下载地址npoi.zip 这里包含了所有所需要的... 阅读全文

posted @ 2015-02-07 18:06 huakaiyueluo 阅读(3957) 评论(0) 推荐(0) 编辑

c# 发邮件功能
摘要:using System;using System.Collections.Generic;using System.Data;using System.Data.SqlClient;using System.Configuration;using System.Linq;using TeaDapp... 阅读全文

posted @ 2014-06-18 13:51 huakaiyueluo 阅读(420) 评论(0) 推荐(0) 编辑

支付宝接入原理
摘要:转载自:http://www.cnblogs.com/blodfox777/archive/2009/11/03/1595223.html支付宝接口程序、文档及解读(ASP.NET)最近需要为网站加入支付宝的充值接口,而目前关于支付宝接口开发的资料比较杂乱,这里就我此次开发所用到的资料进行汇总整理,... 阅读全文

posted @ 2014-05-29 11:34 huakaiyueluo 阅读(1832) 评论(0) 推荐(0) 编辑

datarow用linq查询
摘要:List f_guids = (from DataRow dr in dt2.Rows select dr["f_GUID"].ToString()).ToList(); 阅读全文

posted @ 2014-05-19 15:48 huakaiyueluo 阅读(497) 评论(0) 推荐(0) 编辑

asp.net 下载任意格式文件 上传文件后台代码
摘要:思路:将文件转化为流,输出到页面上的iframe中去 //下载附件逻辑 object DownLoad(NameValueCollection nv) { int attachId = nv["attachid"].ToInt(); ... 阅读全文

posted @ 2014-05-19 15:19 huakaiyueluo 阅读(355) 评论(0) 推荐(0) 编辑

asp.net用Zxing库实现条形码输出
摘要:这个简单的问题,困扰了我将近两个小时,主要是再官方文档上没有找到demo,那只能用搜索引擎了,看看其他程序员写的程序,但是发现处处是坑,看了四五个例子,没有一个可以正常运行的,全部报错,经过一个多小时的尝试,才最终搞定。不多说了,直接上截图和代码。 首先要在项目中添加zxing.dll引用(zxing.dll下载地址http://zxingnet.codeplex.com/)其次就是建立aspx文件,在后台中代码如下using ZXing.Common;using ZXing;using ZXing.Rendering;using System.Drawing;using System.Dr. 阅读全文

posted @ 2013-12-25 17:38 huakaiyueluo 阅读(2531) 评论(8) 推荐(2) 编辑

c# in depth之泛型的实现
摘要:1.默认值表达式如果已经明确了要处理的类型,也就知道了它的“默认”值。不知道要引用的类型,就不能直接指定默认值。不能使用null,因为它可能不是一个引用类型,不能使用0,因为它可能不是数值类型。虽然很少需要用到默认值,但它偶尔还是有用的。Dictionary就是一个好的例子,它有个TryValue方法,它的作用有点儿像对数值类型进行处理的TryParse方法:他用一个输出参数来接收你打算获取的值,用一个Boolean返回值显示它是否成功。这意味着方法必须用TValue类型的值来填充输出参数。请记住,输出参数必须在方法正常返回之前赋值。为了满足这方面的要求,c#2提供了默认值表达式。虽然c#语言 阅读全文

posted @ 2013-11-20 00:21 huakaiyueluo 阅读(1230) 评论(4) 推荐(1) 编辑

用c#实现单链表(程序代码已经验证,完全正确)
摘要:1.程序的大致结构如下图:2.下面依次列出各个类的代码①ILISTDs.cs 这是一个接口类,列出单链表的方法using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace 单链表{ public interface IListDs { int GetLength();//求长度 void Clear();//清空操作 bool IsEmpty();//判断线性表是否为空 ... 阅读全文

posted @ 2013-11-14 23:58 huakaiyueluo 阅读(11697) 评论(13) 推荐(2) 编辑

c#调用语音功能
摘要:转自http://www.cnblogs.com/Hans2Rose/p/WeatherSpeaker.html.Net里面自带了一个语音类库:System.Speech,调用系统的语音功能,就能实现string到语音的转换,很简单(记得先把电脑音量调大一下)://AddSystem.SpeechreferencefirstusingSystem.Speech.Synthesis;varreader=newSpeechSynthesizer();reader.SpeakAsync("I'm a programer. Hello, world!"); 阅读全文

posted @ 2013-11-14 19:05 huakaiyueluo 阅读(1542) 评论(0) 推荐(0) 编辑

c# in depth 之泛型实参的类型推断
摘要:调用泛型方法时,指定类型实参常常会显得很多余。为简化工作,c#2编译器被赋予了一定的“智能”,让你在调用方法时,不需要显式声明类型实参。在深入讨论这个主题之前,必须强调一下:类型推断只适用于泛型方法,不适用于泛型类型。例子:static List MakeList(T first,T second)...List list=MakeList("Line1","Line2");方法中的每个参数都声明为类型T。即使拿掉方法中调用表达式的部分,也很容易看出在调用方法时,为T使用的类型实参是string。编译器允许将其省略,变成:List list=MakeLi 阅读全文

posted @ 2013-11-12 23:39 huakaiyueluo 阅读(499) 评论(0) 推荐(0) 编辑

c# in depth之泛型的类型约束详细
摘要:类型约束1.引用类型约束这种约束(表示成T:class,必须是为类型参数指定的第一个约束)用于确保使用的类型实参是引用类型,这可能是任何类,接口,数组,委托或者已知是引用类型的另一个类型参数。例如 struct RefSample where T:class有效的封装类型包括:RefSample;RefSample;RefSample;无效的封装类型包括:RefSampleRefSample2.值类型约束这种约束(表示成T:struct)可以确保使用的类型实参是值类型,其中包括枚举。但是,它将可空类型排除在外。例如 class ValSample where T:struct有效的封装类型包括 阅读全文

posted @ 2013-11-11 00:44 huakaiyueluo 阅读(398) 评论(0) 推荐(0) 编辑

c#2解决c#1中的问题之用泛型实现参数化类型
摘要:为什么需要泛型你手中还有c#1的代码吗?数一数其中的强制转换有多少,特别是那些大量使用集合的代码。几乎每次使用foreach都需要隐式的强制转换。使用那些为不同数据类型而设计的类型,就意味着强制转换。他们平静的告诉编译器:什么都别担心,一切都很正常,把那个表达式看做似乎它具有这种特性就可以了。任何api只要将object作为参数类型或返回类型使用,就可能在某个时候涉及强制类型转换。设计只有一个类,并将object作为根的层次结构,将使一切都变的更加简单。但是object类型本身是及其愚钝的一个存在。要用一个object做真正有意义的事情,几乎都要对它进行强制类型转换。强制类型转换很糟糕吧。它并 阅读全文

posted @ 2013-11-06 00:21 huakaiyueluo 阅读(1052) 评论(0) 推荐(0) 编辑

c#1所搭建的核心基础之值类型和引用类型
摘要:这个主题很重要,在.NET中做的一切其实都是在和一个值类型或者引用类型打交道。现实世界中的值和引用 假定你在读一份非常棒的东西,希望一个朋友也去读他。于是你到复印室里复印了一份。这个时候他获得了属于他自己的一份完整副本。在这种情况下,我们处理的是值类型的行为。你和你朋友是各自独立的。你可以在自己的上面加一些注释,他的报纸不会改变。 再假定你在qq空间里发表了一篇日志,你想让朋友看到,这一次,你唯一需要给你朋友的是你qq空间日志所在的url地址。这就是引用类型的行为。当你修改你的日志时,你的朋友就你那个看到改变。 在c#和.net中,值类型和引用类型的差异与现实世界中差别类似。.Net中的大多数 阅读全文

posted @ 2013-11-02 02:12 huakaiyueluo 阅读(252) 评论(0) 推荐(0) 编辑

c#1所搭建的核心基础之类型系统的特征
摘要:类型系统的特征简介几乎每种编程语言都有某种形式的一个类型系统。类型系统大致被分为:强/弱,安全/不安全,静态/动态,显式/隐式等类型。c#在类型系统世界中的位置c#1的类型系统是静态的、显式的和安全的静态类型和动态类型c#是静态类型的:每个变量都有一个特定的类型,而且该类型在编译时是已知的。只有该类型已知的的操作才被允许。例子:object o="hello";Console.WriteLine(o.Length);//报错 object o="hello";Console.WriteLine(o.ToString().Length);//5与静态类型对 阅读全文

posted @ 2013-10-31 03:16 huakaiyueluo 阅读(315) 评论(0) 推荐(0) 编辑

c#1所搭建的核心基础之委托
摘要:本文将对c#1的委托进行详细探索委托(delegate) 注 delegate:vt.委派代表;授权给;[法律]债务转移;委托作用:在恰当的时间执行一系列操作1.简单委托的构成声明委托类型必须有一个方法包含了要执行的代码必须创建一个委托实例必须调用委托实例依次讨论各个步骤:①声明委托类型委托类型实际上只是参数类型的一个列表以及一个返回类型。它规定了类型的实例能表示的操作。例子:delegate void StringProcessor(string input)例子表明:要创建StringProcssor的一个实例需要一个返回值为void,有一个参数的函数。StringProcessor是一个 阅读全文

posted @ 2013-10-29 00:11 huakaiyueluo 阅读(254) 评论(0) 推荐(0) 编辑