编程技巧 - 文章列表
-
在ExcuteReader中使用输出参数的问题
今天一个查询需要通过 ExcuteReader 返回结果集,同时又想输出参数,刚开始的时候一直得不到输出参数的值,以为存储过程出错,但是在查询分析器里面测试是正确的,而且输出参数确实已经赋值。更加让人百思不得其解的是,对出输出强制类型转换丢出异常之后,确又可以得到了,难道是ado.net 的bug,想象页不可能啊,这么常用的API,不可能出这种错吧,我的代码类似一下场景:try { using (SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)) {
-
漫谈Visual C#的组件设计方法
Properties 在C#中为类预定义属性是件再简单不过的事,见程序1。 程序1\nusing System;namespace PropertiesDemo{ public class MyData { …………… } public class Class1 { private MyData _data; public MyData Data { get { return _data; } } public Class1() { _data = new MyData(); } }}
-
如何解决Remoting无法传输存储过程参数的问题
在项目的开发中使用Remoting,并且所有的数据请求服务都是通过Remoting完成的,所以自然就在其中到了传递参数的存储过程,在业务逻辑中把参数构建好后传递到Remoting服务端,在取出存储过程的参数时报错,具体错误不记得了,自己尝试了各种方法也不行,上网资讯也没有结果,最后变通了一下,问题解决了,例子如下:\n以下部分为客户调用端1//先声明参数 2 private const string PARAM_GUID = “@GUID”; 3 private const string PARAM_VGA_TREEGUID = “
-
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