文章分类 -  30_C#.Net

摘要:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.IO.Packaging;using System.Xml;namespace... 阅读全文
posted @ 2014-12-09 10:15 阳光小屋 阅读(1548) 评论(3) 推荐(1)
摘要:Boolean createdNew; //返回是否赋予了使用线程的互斥体初始所属权 System.Threading.Mutex instance = new System.Threading.Mutex(true, "MutexName", out createdNew); //同步基元变量 i... 阅读全文
posted @ 2014-12-09 10:12 阳光小屋 阅读(409) 评论(1) 推荐(0)
摘要:Json 优点:易读性、可扩展性和操作方便,接下来我们实现一个简单的例子Demo,场景是:查询商品信息;实现过程:Web程序通过Jquery调用 WebService,Web Service返回Json对象,成功调用后,对返回的JSon结果进行处理,下面我们看一下具体实现过程:1、 首先创建一个Aa... 阅读全文
posted @ 2014-11-17 15:20 阳光小屋 阅读(172) 评论(0) 推荐(0)
摘要:我们知道在.NET中我们有多种对象序列化的方式,如XML方式序列化、Binary序列化,其中XML序列化是一种比较通用的在各语言之间传递数据的方式。除了这两种序列化方式之外,在.NET中还可以使用JSON序列化。 JSON(JavaScript Object Notation)是一种轻量级轻量级的... 阅读全文
posted @ 2014-11-17 14:58 阳光小屋 阅读(108) 评论(0) 推荐(0)
摘要:转自:http://www.cnblogs.com/Donets/archive/2007/04/05/701726.html 1)避免使用ArrayList。 因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型。建议... 阅读全文
posted @ 2014-07-24 12:51 阳光小屋 阅读(92) 评论(0) 推荐(0)
摘要:邮件发送主要使用MailMessage、SmtpClient两个类usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.Net.Mail;//////Email的摘要说明///publicclassEmail{publicEmail(){////TODO:在此处添加构造函数逻辑//}//////初始化信件相关信息/////////publicMailMessageInitMailMessage(stringaddress){MailMessagemail=newMailM 阅读全文
posted @ 2013-07-09 11:16 阳光小屋 阅读(115) 评论(0) 推荐(0)
摘要:在我的第一篇blog发表之后,得到大家的支持,我的工作得到了认可,感到很开心。当然,很多朋友也提出了很多出色的见地。我想在这里说明一下我对这些问题的理解。我所完成的控件是一个用来获取客户端摄像头图片并保存在特殊文件夹里,然后上传到服务器的ActiveX控件。给大家一个截图。 显示图片的就是那个控件。之所以当初想到用C#写ActiveX控件,一是自己不会用VB/C++写ActiveX控件,二是由于简单的WinForm控件由于.net安全性的限制,无法在客户端实现复杂的操作。因为ActiveX控件是以本地用户的身份运行,所以可以突破.net安全性的限制。而这才是《用C#编写ActiveX控件》的真 阅读全文
posted @ 2013-07-09 10:50 阳光小屋 阅读(131) 评论(0) 推荐(0)
摘要:前言:这段时间因为工作的需要,研究了一下ActiveX控件。总结如下:先说说ActiveX的基本概念。根据微软权威的软件开发指南MSDN(Microsoft Developer Network)的定义,ActiveX插件以前也叫做OLE控件或OCX控件,它是一些软件组件或对象,可以将其插入到WEB网页或其它应用程序中。 ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(现在 阅读全文
posted @ 2013-07-09 10:36 阳光小屋 阅读(245) 评论(0) 推荐(0)
摘要:做web项目,很可能会用到ActiveX控件,如今的ActiveX控件大多是使用VB/C++来开发的,本例用C#制作ActiveX。此方法是从网上找的,但是不知道原作者的地址,请原谅。首先,建立一个WinForm控件项目HelloWorld,并拖入一个Label控件,文字设为HelloWorld;UserControl1.cs内容如下:using System;using System.Collections;using System.ComponentModel;using System.Drawing;using System.Data;using System.Windows.Forms 阅读全文
posted @ 2013-07-09 10:33 阳光小屋 阅读(151) 评论(0) 推荐(0)
摘要:1,ASPX页面缓存 页面缓存的使用方法非常的简单,只需要在aspx页的顶部加一句声明<%@ OutputCache Duration="60" VaryByParam="none" %> 这样整个页面的内容都会被缓存,页面中的ASP.NET代码、数据源在缓存期间都不会被运行,而是直接输出缓存的页面内容。 页面缓存是针对所有这个页面的访问者。这样1个访问者和1万个访问者、一次访问和100万次访问对数据库的压力是一样的。Duration="60" 的意思是指定缓存的时间为60秒,可根据情况自已设定,超过这个时间则缓存失效,再 阅读全文
posted @ 2013-04-20 09:31 阳光小屋 阅读(135) 评论(0) 推荐(0)
摘要:using System; using System.Runtime.InteropServices; using System.Drawing; using System.Drawing.Imaging; namespace using System; using System.Runtime.InteropServices; using System.Drawing; using System.Drawing.Imaging; namespace PickHead { /// <summary> /// 一个控制摄像头的类 /// </summary> publi. 阅读全文
posted @ 2013-04-06 18:12 阳光小屋 阅读(209) 评论(0) 推荐(0)
摘要:引言:作为一个.NET程序员,我们知道托管代码的内存管理是自动的。.NET可以保证我们的托管程序在结束时全部释放,这为我们编程人员省去了不少麻烦,我们可以连想都不想怎么去管理内存,反正.NET自己会保证一切。好吧,有道理,有一定的道理。问题是,当我们用到非托管资源时.NET就不能自动管理了。这是因为非托管代码不受CLR(Common Language Runtime)控制,超出CLR的管理范围。那么如何处理这些非托管资源呢,.NET又是如何管理并释放托管资源的呢?自动内存管理和GC在原始程序中堆的内存分配是这样的:找到第一个有足够空间的内存地址(没被占用的),然后将该内存分配。当程序不再需要此 阅读全文
posted @ 2013-04-06 18:10 阳光小屋 阅读(177) 评论(0) 推荐(0)
摘要:通过编程方式实现短信息的发送对很多人来说是一件比较烦杂的事情,目前一般的解决方法是通过计算机和手机的连线,通过可对手机编程的语言编写相关的手机短信息程序来实现,而这种方法对于一般人来说是很难达到的,因为此种方法不仅要有很多必备的硬件设备,也还需懂得手机编程的相关知识。本文就来探讨一下另外一种通过Visual C#发送短信息的简单实现方法,这种方法在实现过程中比我们想象的要简单许多,只需拥有Visual C#一般编程基础,并确定您的计算机接入互联网即可。下面就来详细介绍一下Visual C#发送短信息的具体实现过程。 一. Visual C#发送短信息的原理: 我想当很多读者一看到本文的题目.. 阅读全文
posted @ 2013-04-06 18:06 阳光小屋 阅读(506) 评论(0) 推荐(0)
摘要:一、Petshop4解决方案 Petshop4代码和数据库:下载 Petshop4详解:下载 安装要求: Operating System: Windows XP SP2 or Windows Server 2003 Microsoft.NET Framework 2.0Microsoft SQL Server 2005, SQL Server Express, or Oracle 10gMicrosoft Internet Explorer 6 or greaterMicrosoft Visual Studio® .NET 2005 后续步骤: 1、手动编译:运行<Pet.. 阅读全文
posted @ 2013-04-06 13:19 阳光小屋 阅读(295) 评论(0) 推荐(0)
摘要:1. 默认的命名空间 命名空间是C#类、接口、委托、枚举和其他类型的一种逻辑上的组合。如果您没有定义自己的命名空间,代码会自动放入一个没有名称的全局命名空间中。命名空间的第一部分通常是一个公司或组织的名称,第二部分应该是相关技术的名称,后面跟可选的特性和设计名。比如,如果您在Acme Engines Corporation工作,您可以这样定义您好的命名空间:AcmeEngines.FuelInjector.Diesel。 2. 类的默认访问控制符internal 类有四种访问属性:internal、private、protected和public。在命名空间中声明的类只能有pu... 阅读全文
posted @ 2013-04-06 13:13 阳光小屋 阅读(830) 评论(0) 推荐(0)
摘要:一、 术语定义Pascal 命名法标识符的首字母和后面连接的每个单词首字母大写。例如:ProductNameCamel 命名法标识符的首字母小写,而后面连接的每个单词首字母大写。例如:userFamilyAddress二、 命名规范(1) 文件文件名遵从Pascal 命名法,无特殊情况,扩展名小写。例如:SqlHelper.cs(2) 命名空间1. 命名命名空间的一般性规则是使用公司名称,后跟项目名称和功能模块名称。2. 命名空间的命名遵从Pascal 命名法。例如:IBM.AttendanceSystem // IBM的考勤管理系统IBM.AttendanceSystem.IDAL // I 阅读全文
posted @ 2013-04-06 13:08 阳光小屋 阅读(305) 评论(1) 推荐(1)
摘要:前面的每个委托只调用一个方法,一个委托可以包含多个方法,这种委托称为多播委托。如果调用多播委托就可以连续调用多个方法。但是委托的签名的返回值必须是void,否则只能够得到委托调用的最后一个方法的结果。看下面代码// 多播委托 delegate void DoubleOp (double value );class MathOperations { public static void MultiplyByTwo (double value ){ double result = value * 2 ;Console . WriteLine ("{0} Multiply by two = 阅读全文
posted @ 2013-04-06 10:53 阳光小屋 阅读(150) 评论(0) 推荐(0)
摘要:说明:写作本文的出发点是最近和一个有3年开发经验的.NET开发人员聊天,他跟我说经常没有思路,在实际开发中我也见过一个具有4、5年开发经验的开发人员几乎没有灵活变通的能力,所以打算写一系列文章,在这个系列文章中我会主要讲解解题的思路,而不是讲述什么新技术新特性,借这个系列文章为初中级开发者了解遇到问题别人是如何思考和解决的。当然,如果你的思路比本文提到的更好,欢迎指出来,同时如果你对本系列文章有更好的建议或者有日常中的一些典型问题,请给我联系,我们共同探讨。目前我暂时能想到的有不重复随机数产生问题、字符串与数值转换的问题、特殊的数据库锁问题、访客来路追踪问题、在线用户统计问题、统计用户访问页面 阅读全文
posted @ 2013-04-06 10:02 阳光小屋 阅读(1148) 评论(0) 推荐(0)
摘要:[转贴一]使用ASP.NET MVC框架,创建默认项目,第一直观感觉就是地址都是Rewrite过的。对源码和配置文件稍加分析不难看出,MVC使用了httpModules来拦截地址请求,具体用到了System.Web.Routing类库(MVC2中,MVC1怎么用的忘记了。)而这部分类库被包装在.NET Framework3.5 SP1中,MVC2需要SP1支持也就理所当然了。SP1提供的System.Web.Routing类库可以方便地进行地址请求拦截,对编码处理方面也很优秀。UrlRoutingModule类拦截请求,在这之前,Application_Start的时候,会给RouteTabl 阅读全文
posted @ 2013-04-06 09:48 阳光小屋 阅读(243) 评论(0) 推荐(0)
摘要:在C#中,ref与out是很特殊的两个关键字。使用它们,可以使参数按照引用来传递。总的来说,通常我们向方法中传递的是值.方法获得的是这些值的一个拷贝,然后使用这些拷贝,当方法运行完毕后,这些拷贝将被丢弃,而原来的值不将受到影响.此外我们还有其他向方法传递参数的形式,引用(ref)和输出(out).有时,我们需要改变原来变量中的值,这时,我们可以向方法传递变量的引用,而不是变量的值.引用是一个变量,他可以访问原来变量的值,修改引用将修改原来变量的值.变量的值存储在内存中,可以创建一个引用,他指向变量在内存中的位置.当引用被修改时,修改的是内存中的值,因此变量的值可以将被修改.当我们调用一个含有引 阅读全文
posted @ 2013-04-06 09:37 阳光小屋 阅读(164) 评论(0) 推荐(0)