编程技巧 - 文章列表

  • C#中时间格式的转换

    有时候我们要对时间进行转换,达到不同的显示效果  默认格式为:2005-6-6 14:33:34  如果要换成成200506,06-2005,2005-6-6或更多的该怎么办呢  我们要用到:DateTime.ToString的方法(String, IFormatProvider)    using System;  using System.Globalization;  String format=”D”;  DateTime date=DataTime,Now;  Response.Write(date.ToString(format, DateTimeForma

  • 利用Visual C#实现任务栏通知窗口

    想必大部分网友都使用过QQ、MSN等聊天程序,它们的界面都相当华丽,尤其是当网友上线以及消息提示时会有一个浮动的窗体从屏幕的右下方缓慢升起,既美观又人性化,作为程序员在享受的同时我们也不禁要问:这到底是怎么实现的呢?本文就利用Visual Studio .Net C# 2005以及.Net框架绘图技术来实现这种任务栏通知窗口。   简介  QQ和MSN的任务栏通知窗口很人性化,它可以在不丢失主窗体焦点的前提下显示一个具备皮肤Skin的通知窗体,当它显示一段时间后会自动消失,所以用户根本不用干预它。这样的通知窗体和一般的具备标题栏、系统图标和按钮的窗体没有太大的区别,窗体表面其实就是画上去的一张

  • 下一代ADO.NET—ADO.NET Entity Framework

    ADO.NET Entity Framework的目标\n从纷繁芜杂的关系数据模型中抽象出概念模型。这样开发人员可以只需着眼概念模型,而不必要去关心纷繁芜杂的关系数据模型,从而提高开发效率。\n那么如何能够做到这一点?答案就是:Language-Integrated Query 和 ADO.NET Entity Framework,也就是下一代的ADO.NET.\nADO.NET Entity Framework包括\n1. 实体数据模型(Entity Data Model),开发人员通过EDM抽象出非常合适的模型。2. 非常强大的client-view/mappping引擎,用于映射数据关系

  • 深入ASP.NET 2.0的提供者模型

    一、 引言  早在2001年,我就着手开发一个ASP.NET在线消息板应用程序WebForums.NET。其目的是创建一个基于ASP.NET的消息板系统,而且该系统可以容易插入到一个现有网站中。构建这样一个端对端应用程序的特别挑战之一就是,要为客户提供一种方式以便能够把它集成到他们自己的系统中去。例如,一个在线论坛明显需要使用某种数据存储来存储用户信息、论坛、回寄信息等;但是,最好不要把客户锁定到一种特定的数据存储中。也就是说,你不应该说,”我的应用程序必须使用微软的SQL Server 2000″;因为这样的话,使用Oracle或Access的客户怎么会使用你的软件呢

  • C#中ref和out的使用小结

     ref是传递参数的地址,out是返回值,两者有一定的相同之处,不过也有不同点。  使用ref前必须对变量赋值,out不用。  out的函数会清空变量,即使变量已经赋值也不行,退出函数时所有out引用的变量都要赋值,ref引用的可以修改,也可以不修改。   区别可以参看下面的代码:\nusing System;class TestApp{ static void outTest(out int x, out int y) {//离开这个函数前,必须对x和y赋值,否则会报错。   //y = x;   //上面这行会报错,因为使用了out后,x和y都清空了,需要重新赋值,即使调用函数前赋过值也不

  • ASP.NET实现下拉框二级联动组件

    namespace WebApplicationDlh { using System; using System.Data; using System.Drawing; using System.Web; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using Db; /// <summary> /// Area 的摘要说明。 /// </summary> public class Area : System.Web.UI.

  • ASP.NET 2.0中在gridview中使用DataFromatString的小技巧

    可能之前不少朋友也已经试过,但我是今天才遇到这个问题,翻查资料后才解决。主要是在asp.net 2.0中,如果要在绑定列中显示比如日期格式等,如果用下面的方法是显示不了的\n<asp :BoundField DataField=“CreationDate” DataFormatString=“{0:M-dd-yyyy}” HeaderText=“CreationDate” />\n主要是由于htmlencode属性默认设置为true,已防止XSS攻击,安全起见而用的,所以,可以有以下两种方法解决\n1、\n<asp :GridView ID=“Gr

  • ASP.NET 2.0 WebService中传递DataTable参考

    在2.0正式版发布之前,就满天的看到关于DataTable支持序列化的新特性宣传,满以为从此以后使用DataTable就和DataSet一样方便了,结果在应用项目的时候才发现并非那么回事。  DataTable是支持序列化了,但是微软并没有把他做的特别方便,还需要我们自己来做一些工作之后才能够在WebService里面传递DataTable,否则在引用DataTable的时候会发现DataTable变成了一个什么Proxy类型。  首先编写类DataTableSchemaImporterExtension,代码如下:using System;using System.Collections.G

  • ASP.NET2.0 GridView绑定XmlDocument

    ASP.NET 2.0提供了多种数据源,一般情况下,XmlDataSource控件使用XML文件,下面的例子就是使用XmlDocument对象进行数据绑定的一种方法。\n  VB.NET代码\n<%@ Page Language=”VB” %><script runat=”server”> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Dim doc As New System.Xml.XmlDocument

  • .NET关于同步、异步及Socket

    以SOCKET通信中的异步方法为例:\npublic static ManualResetEvent ConnectDone = new ManualResetEvent(false);public static void ConnectCallback(IAsyncResult ar){Socket sClient = (Socket)ar.AsyncState;sClient.EndConnect(ar);Console.WriteLine(“Socket connected to {0}”, sClient.RemoteEndPoint.ToString());C