.Net
lonet
这个作者很懒,什么都没留下…
展开
-
C# Dictionary序列化/反序列化
1.说明:Dictionary对象本身不支持序列化和反序列化,需要定义一个继承自Dictionary, IXmlSerializable类的自定义类来实现该功能。感觉完全可以把这样的类封装到C#库中,很具有通用性嘛,至今没有遇到不能用的情况的说,或许出于其他方面的考虑microsoft才没有这么做。2.SerializableDictionary自定义类[csh转载 2013-05-10 09:52:34 · 1886 阅读 · 0 评论 -
C#.Net命名空间
.NET Framework 类库提供下列命名空间: ▲Microsoft.CSharp 包含支持用 C# 语言进行编译和代码生成的类。 ▲Microsoft.JScript 包含支持用 JScript 语言进行编译和代码生成的类。 ▲Microsoft.VisualBasic 包含支持用 Visual Basic .NET 语言进行编译和代码生成的类。 ▲Micr原创 2012-06-05 11:10:03 · 1183 阅读 · 0 评论 -
实现winform与webform互相通讯
webcontrol的DOM控制它,就像javascript控制的DOM一样像比如obj = document.getElementByName(name)之类的方法 web控件是有的如果winform 和 webform不在同一个项目中,就 webform留接口出来,用winform,webform程序间传值,这样简单得多,就可以不用socket,而且不用自己去分析HTTP协议。C#越来原创 2012-04-16 15:19:50 · 5342 阅读 · 0 评论 -
DevExpress控件的GridControl控件
XtraGrid的关键类就是:GridControl和GridView。GridControl本身不显示数据,数据都是显示在GridView/CardView/XXXXView中。GridControl是各种View的容器。所以要控制显示,要从GridView这些类入手。 1.DevExpress控件组中的GridControl控件不能使横向滚动条有效。现象:控件中的好多列都挤在一原创 2012-03-02 16:40:10 · 1892 阅读 · 0 评论 -
C#多线程编程
在.NET多线程编程这个系列我们讲一起来探讨多线程编程的各个方面。首先我将在本篇文章的开始向大家介绍多线程的有关概念以及多线程编程的基础知识;在接下来的文章中,我将逐一讲述。NET平台上多线程编程的知识,诸如System.Threading命名空间的重要类以及方法,并就一些例子程序来作说明。引言 早期的计算硬件十分复杂,但是操作系统执行的功能确十分的简单。那个时候的操作系统在任一时间原创 2011-12-07 09:52:08 · 7182 阅读 · 1 评论 -
WCF生成客户端对象方式解析
在WCF中有两种不同的方法可以用于创建客户端服务对象,他们分别为:1. 代理构造法2. 通道工厂法本文会从实际应用的角度上,阐述两种方法的一些细节和优劣对比,希望通过学习本文,能掌握什么情况下使用什么样的方式来创建客户端服务代理对象,怎样创建客户端代理对象。本文重点在术,非道。 构造代理法从名字中可以看出,使用本方法创建客户端服务代理对象,是调用了服务代理类的构造方法。原创 2011-06-16 17:02:00 · 1972 阅读 · 0 评论 -
Svcutil.exe详解
补充:以下命令为客户端生成代理svcutil net.tcp://192.168.0.100:3333/ChatService /language:C# /out:proxy.cs /config:app.config以下命令为客户端生成异步代理(设置IsOneWay=false时使用)svcutil net.tcp://192.168.0.100:3333/ChatServi原创 2011-06-16 17:00:00 · 20948 阅读 · 0 评论 -
解决.NET Framework 3.5 sp1离线安装方案
<br /><br />今天准备部署套TFS的环境,碰到了此问题。在网上找了个解决方案,共享如此:<br />.net Framework 3.5 Service pack 1(Full Package) 231MB是网络上最完整的离线安装包,安装时却还提示要联网下载,如果没联网就麻烦了,这里下载的是语言包。这里教你自己动手制作真正的.net Framework 3.5 Service pack 1完整离线安装包.<br />第一种解决.NET Framework 3.5 sp1离线安装方案<br />1、原创 2011-04-24 23:00:00 · 17843 阅读 · 4 评论 -
WCF架构入门-用VS2008构建WCF
<br /><br /> 根据微软官方的解释,WCF(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(Service Oriented)应用程序的统一框架。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下所有的和分布式系统有关的技术,例如.Net Remoting、ASMX、WSE和MSMQ。以通信(Communiation)范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于 I转载 2011-05-25 15:23:00 · 549 阅读 · 0 评论 -
合并两个结构一样的dataset数据集
<br />DataSet DS1=........; <br />DataSet DS2=........; <br />//以上两个DS的表结构是一样的如<br /><br />DS1的数据是 <br />name/password <br />王强/123 <br />张三/321<br /><br />DS2的数据是 <br />name/password <br />李四/555 <br />狗蛋/666<br />结果DS1=DS1+DS2<br />方法一: <br />ds1.Tables[原创 2010-11-05 15:56:00 · 2451 阅读 · 0 评论 -
对 PInvoke 函数的调用导致堆栈不对称的解决方法
调用DLL出现以下错误的解决方法:对 PInvoke 函数“YKSE.Finixx.MemberLib!YKSE.Finixx.MemberLib.clsCCB::EFT_DecFile”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。DllImport写成这样:[DllImp原创 2012-06-05 14:46:29 · 3659 阅读 · 0 评论 -
vs2010设置不自动加载DevExpress插件
【工具】-【扩展管理器】中把DevExpress卸载了原创 2012-07-30 11:45:10 · 3495 阅读 · 0 评论 -
数字的正则表达式
验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^\转载 2013-04-25 10:08:54 · 881 阅读 · 0 评论 -
Visual Studio修改启动界面的授权用户信息
以VS2010为例:32位的系统中,修改以下注册表键值 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0\Registration\UserName HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization原创 2012-02-10 15:54:15 · 4295 阅读 · 0 评论 -
C#生成指定长度指定字符的随机数
public static string GetRandomString(int iLength) { string buffer = "0123456789";// 随机字符中也可以为汉字(任何) StringBuilder sb = new StringBuilder(); Random r = n原创 2013-01-18 16:19:43 · 3617 阅读 · 0 评论 -
C#在64位操作系统上用X86方式连接64位Oracle的问题和解决方案
C#使用System.Data.OracleClient连接Oracle数据库。之前在WinXP上正常运行的程序移植到Windows 2008 x64上之后就连不上数据库了,错误信息如下:尝试加载Oracle客户端库时引发BadImageFomatException。如果在安装32位Oracle客户端组件的情况下以64位模式运行,将出现此问题。错误原因是原来WinXP机子上所安装的原创 2012-12-05 10:35:35 · 8522 阅读 · 0 评论 -
VS2010中 C++创建DLL图解
VS2010中 C++创建DLL图解一、DLL的创建 创建项目: Win32->Win32项目,名称:MyDLL选择DLL (D) ->完成.1、新建头文件testdll.htestdll.h代码如下:#ifndef TestDll_H_#define TestDll_H_#ifdef MYLIBDLL#define MYLIBDLL转载 2012-11-20 16:00:25 · 1540 阅读 · 0 评论 -
VS2010 无法嵌入互操作类型...请改用适用的接口 解决办法
visual studio 2010、“添加引用”时出错: “无法嵌入互操作类型...请改用适用的接口”解决方案: 选中项目中引入的dll, 鼠标右键, 选择属性, 把“嵌入互操作类型”设置为False。原创 2012-11-29 15:40:20 · 832 阅读 · 0 评论 -
解决DESCryptoServiceProvider加解密时弱密钥异常
DES算法的密钥是8字节,由于其算法的特性所致,有一些密钥是不安全的,比如0xFF0xFF0xFF0xFF0xFF0xFF0xFF0xFF,用该密钥对数据进行加密与解密运算,得到的结果是一样的,这样的密钥被称为弱密钥。在.NET中我们一般用DESCryptoServiceProvider来进行DES运算,但是该类会去检测传入的密钥是否为弱密钥,如果是,就直接抛出异常。先看下面的代码:原创 2012-06-20 11:30:53 · 3252 阅读 · 2 评论 -
监控数据库性能的语句
1. 监控事例的等待 select event, sum(decode(wait_Time,0,0,1)) "Prev", sum(decode(wait_Time,0,1,0)) "Curr", count(*) "Tot" from v$session_Wait group by event原创 2012-08-29 11:57:10 · 795 阅读 · 0 评论 -
C#中的预编译指令介绍
1、#define和#undef 用法: #define DEBUG #undef DEBUG #define告诉编译器,我定义了一个DEBUG的一个符号,他类似一个变量,但是它没有具体的值,可以将它看为一个符号而已。#undef就是删除这个符号的定义。如果符号DEBUG没定义过,则#undef不起作用,否则原创 2012-08-17 10:12:27 · 1037 阅读 · 0 评论 -
无需.NET Framework环境运行.NET编写的软件
.NET 开发效率高, 大行其道. 但却一直存在一个比较头疼的通病, 需要安装 .NET Framework, 尤其是.NET 2.0开发的软件. Windows XP 和 Windows 2003 默认都没有.NET 2.0 运行环境. 特别是一些精简版, 譬如"番茄花园"之类的版本, 连.NET2.0都装不上. 现在我们利用移动飞信的原理, 来解决以上的问题. 1. 安装完移动飞原创 2010-05-28 14:36:00 · 1022 阅读 · 0 评论 -
C#日期控件datetimepicker保存空值方法
方法一(推荐):设置datetimepicker的属性ShowCheckBox为true在窗口初始化时候,添加代码this.datetimepicker1.Checked = false;保存日期值入库的时候,就可以根据if(this.datetimepicker1.Checked ==false),保存空值。方法二:在窗口初始化函数中添加:this.dateTimePic原创 2010-05-13 16:33:00 · 6001 阅读 · 3 评论 -
C#保留小数位数的方法集锦
1.System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo(); provider.NumberDecimalDigits =intDecLength; //要设定的小数位数double strCashAmt=Convert.ToDouble(this.txtCas原创 2010-04-13 12:02:00 · 782 阅读 · 0 评论 -
C# 对Ini文件读写
一、INI文件读写类INICLassusing System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;using System.IO;namespace IniOperator{ public class INIClass { publ原创 2008-10-30 16:30:00 · 536 阅读 · 0 评论 -
C# 调用带参数EXE文件及带启动参数EXE制作
(一)、先制作一个带启动参数的EXE文件。 步骤: 1、定义全局私有变量:private string[] s = new string[1]; //这里为了简单起见,只做一个参数 2、 在窗体的构造函数中初始化启动参数 public Form1(string[] p) {原创 2008-10-30 16:22:00 · 908 阅读 · 0 评论 -
使用 ADO.NET 和 Oracle 进行高级数据访问
适用范围:Microsoft ADO.NET 1.1Oracle 数据类型摘要:学习如何使用 ADO.NET 1.1 从复杂的 Oracle 数据类型中检索数据。 引言.NET Framework Data Provider for Oracle 并不总是能够方便地检索出以复杂方式存储的数据。本文将讨论如何访问存储在下表中列出的 Oracle 特定的数据类型中的数据:原创 2008-10-14 11:27:00 · 659 阅读 · 0 评论 -
演示如何从DataSet中获取LOB数据
演示如何从DataSet中获取LOB数据。using System;using System.Collections.Generic;using System.Text;using System.Data;using Oracle.DataAccess.Client;using Oracle.DataAccess.Types;namespace Sample11{ /**////原创 2008-10-14 11:45:00 · 905 阅读 · 0 评论 -
使用 ADO.NET 访问 Oracle 9i 存储过程
本文讨论了如何使用 ADO.NET 访问 Oracle 存储过程(称为 SQL 编程块)和函数(返回单个值的编程块)。您可以使用以下托管数据提供程序连接到 Oracle 数据库:Microsoft .NET Oracle 提供程序、OLE DB .NET 提供程序、ODBC .NET 数据提供程序以及 Oracle 的 ODP.NET 提供程序。本文使用用于 Oracle 的 Microsof原创 2008-10-14 11:20:00 · 642 阅读 · 0 评论 -
如何判断DataSet为空和非空
if(ds==null)//ds为空 if(ds.Tables.Count==0)//ds中没有表 if(ds.Tables.Count ==1 && ds.Tables[0].Rows.Count ==0)//ds中的表没有数据原创 2008-10-27 15:16:00 · 4202 阅读 · 0 评论 -
C#、Oracle、Sql server中拼音查询的函数
C# sqlserver oracle 的都有 不过发现那个 C# 的好像"楠"字查的时候会有问题。。。不知道为啥。。C# 1/**//// 2 /// 生成拼音简码 3 /// 4 /// Unicode编码字符串 5 /// 拼音简码:string 6 public static string GetPinyinCode(string unic原创 2008-10-10 11:19:00 · 1232 阅读 · 0 评论 -
Oracle Data Provider for .NET
ODP.NET types represent Oracle native types as a structure or as a class. For example, an OracleDecimal holds up to 38 precisions while a .NET Decimal holds only up to 28 precisions. Table 3.2 lists a原创 2008-10-09 11:09:00 · 3897 阅读 · 0 评论 -
C#调用Oracle存储过程注意事项
在C#里定义存储过程参数的时候要注意参数名与Oracle里定义的要一至!今天我就是因为这个搞了半天!原创 2008-10-23 15:49:00 · 647 阅读 · 0 评论 -
C#加密解密方法汇集
1、方法一 (不可逆加密) public string EncryptPassword(string PasswordString,string PasswordFormat ) ...{ string encryptPassword = null; if (PasswordFormat="SHA1")...{ encryptPassword=FormsA转载 2008-12-12 15:03:00 · 563 阅读 · 0 评论 -
C# 调用带参数EXE文件及带启动参数EXE
(一)、先制作一个带启动参数的EXE文件。 步骤: 1、定义全局私有变量:private string[] s = new string[1]; //这里为了简单起见,只做一个参数 2、 在窗体的构造函数中初始化启动参数 public Form1(string[] p) {原创 2009-10-29 11:51:00 · 21745 阅读 · 0 评论 -
在.NET中调用Oracle9i存储过程经验总结
在.NET中调用Oracle9i存储过程可以用多个数据提供者,比如OralceClient,OleDb。本文将用OralceClient为例。.NET语言用C#。 一、调用一个带输入、输出参数的存储过程首先,在Oralce中创建存储过程如下:create or replace procedure GetRecords(name_out out varchar2,age_in原创 2010-03-12 09:41:00 · 694 阅读 · 0 评论 -
C# 打包文件,制作EXE安装文件
1 新建安装部署项目 打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定。 2 安装向导 关闭后打开安装向导,点击下一步,或者直接点击完成。 3 开始制作 安装向导完成后即可进入项目文件夹: 双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。然后右击你的文件原创 2010-03-08 15:39:00 · 1194 阅读 · 0 评论 -
C#中将dll汇入exe,并加壳
这几天使用了3层架构,运行目录下有很多dll文件,最终发布时,我打算将dll文件都合并到exe文件中去。微软发布的免费软件ILmerge可以完成这项工作,研究了一下,其用法如下:1、合并file1.dll、file2.dll到destination.dllILmerge /ndebug /target:dll /out:C:/destination.dll /log C:/file1.dl原创 2010-03-08 15:39:00 · 752 阅读 · 0 评论 -
如何将封装c#的源程序变成一个EXE或MSI安装包?
C#应用程序的部署1:新建安装部署项目打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定.(详细见下图)此主题相关图片如下:2:安装向导关闭后打开安装向导,点击下一步,或者直接点击完成.3:开始制作安装向导完成后即可进入项目文件夹:双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来.原创 2010-03-08 15:37:00 · 5721 阅读 · 0 评论 -
.NET中各种数据库连接大全
http://www.connectionstrings.com/ SQL Server ODBC OLEDB, OleDbConnection (.NET) SqlConnection (.NET) Data Shape Read more Standard Security:"Driver={SQL Server};Server=A原创 2010-03-01 11:04:00 · 668 阅读 · 0 评论