文章分类 - C# / .net
摘要:封装SoapException处理Webservice异常 Webservice客户端使用一个WebMethod时,如果WebMethod内部出现异常,不管异常是系统级异常或者自定义的异常,均会被包装为SoapException类型的异常,返回给客户端。 客户端再使用这种SoapException时,无法直接从异常类的属性中提取直接的业务异常信息。 网上看到有同学是做了一个SoapException的Helper类,利用正则表达式的方式,从SoapException的属性做文法分析,从中提取业务异常信息。可是感觉这种方法不是很.Net,而且是不保险的一种做法,如果是自定义异常之类的,在做文法分
阅读全文
摘要:使用方法非常简单 在项目属性窗口中,选择"生成事件",在"生成后事件命令行"下的文本框中输入 ilmerge /ndebug /t:dll /log c:/1/DevExpress.Data.v7.3.dll c:/1/DevExpress.OfficeSkins.v7.3.dll c:/1/DevExpress.Utils.v7.3.dll c:/1/log4net.dll /out:c:/1/kkun/Tstring.Core.DLL然后编译就可以合并多个DLL到一个DLL了, 其中有两个非常重要的参数,更多的参数可以看安装后的帮助文件 /log 后
阅读全文
摘要:下面测试下分布式缓存Memcached软件,一直在学习关注大访问量网站的缓存是如何实现,之前看过Memcached的资料,忙于没有时间来真正测试一下,本文测试分布式缓存Memcached的环境如下:(两台电脑作为服务器)第一台:CPU:Inter(R) Pentium(R) 4 CPU 2.8G内存:1G系统:windows 7IIS: IIS 7IP:172.10.1.97环境:本地安装:memcached 1.2.1 for Win32第二台:CPU:Inter(R) Pentium(R) 4 CPU 3.0G内存:2G系统:windows Server 2003IIS: IIS 6IP:
阅读全文
摘要:在C#中可以获取DSN列表,也可以弹出ODBC数据源管理器进行设置。1、C#获取机器上的DSN列表。采用Microsoft.win32类提供的注册表类RegistryKey和Registry,访问系统注册表可获取ODBC数据服务列表。获取系统DSN如下: ///创建两个RegistryKey类,一个将指向RootPath,另一个将指向子Path RegistryKey regRootKey; RegistryKey regSubKey; ///定义Root指向注册表HKEY_LOCAL_MACHINE节点, ///如果是需要获取用户DSN则需要使用Registry.CurrentUser; r
阅读全文
摘要:效果:通过在网站的Global.asax的Application_Start方法中加入定时器 定时调用WebService该WebService的一个方法 负责在后台 向数据库的某个表加入数据步骤:1.通过VS 新建一个网站2.加入Global.asax3.加入WebService 编辑 并 加入引用4.对Global.asax进行编辑5.保存 运行 网站 查看效果=============================1.通过VS 新建一个网站2.加入Global.asax -----------------其默认内容如下:<%@ Application Language="
阅读全文
摘要:Cache 即高速缓存 ,我想非常多人对他的第一印象一定像我相同,感觉他一定能提高系统得性能和运行速度。的确。Net推出cache的初衷确实是这样的。那么cache是怎么提高系统性能和运行速度呢?是不是在所有情况下用cache都能提高性能?是不是cache用的越多就越好呢?我在近期研发的项目中有所体会,写下来当作总结也希望能跟大家一起探讨探讨,有错误的地方希望大家批评指正。 1.Cache 是怎么工作的 Cache 是分配在服务器上的一个公共的内存片。 所谓公共指的cache只要一创建是所有一个客户端浏览器都能通过后台代码访问到他,他面向的是所有用户,相对而言session...
阅读全文
摘要:1.Cache的概述 Cache和Application一样是整个应用程序公用的一份,而且所有的用户访问的都是相同的Cache 计算机系统本身就是一个多级缓存的结构,CPU的缓存中存放了部分内存中的数据,内存中存放了部分硬盘中的数据 缓存中的数据其实是来自数据库的,一般来说,缓存中应该存放改动不大或者对数据的实时性没有太多要求的数据,只需定期更新缓存就可以了 ASP.NET中的Cache提供的缓存过期策略: 永不过期:和Application一样,缓存永不过期 绝对时间过期:缓存在某一时间过期,比如5分钟后 变化时间过期(平滑过期):缓存在某一时间内未访问则超过过期 依赖过期:缓存依赖于数据库
阅读全文
摘要:一. Cache 是如何工作的。Cache 是分配在服务器上的一个公共的内存片。所谓公共指的cache只要一创建是任何一个客户端浏览器都可以通过后台代码访问到它,它面向的是所有用户,相对而言session也是服务器上的一段内存,但他面向的是单个用户。它是服务器的一段内存块,也就是说每个cache一经创建就占用了服务器资源的。所以从这点来说我们就可以说:并不是 cache越多越好。cache 是有时间限制的,超过了服务器设定的过期时间,它就会被服务器回收。cache 可以存放任何对象二. Cache 如何创建以及如何销毁。创建cache在。Net环境下通过Cache.Insert(string
阅读全文
摘要:由于微软的Web service实现是基于Asp.net,所以会出现缓存也就在情理之中了.主要有2中缓存:输出缓存和数据缓存.由于Web Service的缓存管理与asp.net基本是一样的,就不说他的原理,主要说一下在Web service中是如何实现的.输出缓存实现方法是在WebMethod这个特性里面加一个属性CacheDuration,如下代码所示[WebMthod(CacheDuration=30)]public string HelloWorld(){...}其单位为秒.数据缓存数据缓存主要是存储在Context.Cache之中.而关于数据缓存有一个比较通用的设计模式.那就是建立一
阅读全文
摘要:[转]WebService的缓存机制2008年02月19日 星期二 11:22WebService的缓存分为两种,一种是简单的输出缓存,一种是强大的数据缓存一、输出缓存输出缓存的使用非常简单,比较适用于WebService的参数比较少,结果比较单一的情况,例如股票信息,可以设置5-10秒的缓存,天气预报,则可以设置30分钟甚至数小时的缓存使用方法是:在WebMethod属性上指定CacheDuration属性即可,例如这样,600秒内这个WebService的所有输出数据都将从缓存中读取,不会真正做数据处理,如果事务代码是访问数据库的话,现在这种方法就会比每次都访问数据库快得多。这种缓存适合初
阅读全文
摘要:using System;using System.Collections.Generic;using System.Text;using Word;using System.Data;using System.Collections;namespace Pixysoft.Office{ /// <summary> /// 支持创建、打开、保存、关闭文档 /// 支持页面设置 /// 支持普通文字输入设置 /// 支持表插入 /// 支持BookMark /// </summary> public class WordDocuments {...
阅读全文
摘要:/// <summary> /// Excel操作类 /// </summary> public class Excel { #region 私有属性 private _Application _oExcel = null; //Excel应用程序 private _Workbook _oBook = null; //Excel工作薄 private _Worksheet _oSheet = null; //Excel工作表 private bool _visible=false; //是...
阅读全文
摘要:一般简繁转换我们看到比较多的是JS版本,这里贴一个用C#实现简繁转换功能的代码: 1.参考Com Microsoft Word 11.0 Object Library,这一点在安装Office时必须选择.NET编程组件。 2.using Microsoft.Office.Interop.Word; 3.using System.Reflection; 4.利用word简繁体转换方法写转换方法。static string CHS2CHT(string src) { string des = ""; _Application appW...
阅读全文
摘要:为了保护软件的著作权,又想让用户有个好的体验,我们需要设计软件评估期,这里贴一个用C#实现软件评估期30天的限制的实例代码:using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Infralution.Licensing.CF; namespace Geoff.DeviceApplication { p...
阅读全文
摘要:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;namespace TaskbarSwitch{ public partial class Form1 : Form { public Form1() { ...
阅读全文
摘要:using System;using System.Diagnostics;namespace Prolink.EHU.WebGui.classes{/// <summary>/// ExcelOperation 的摘要说明。/// </summary>public class ExcelOperation{ private object missing = System.Reflection.Missing.Value; // 在引用excel时,有些参数为空,就用它替换 private Excel.Application excel = new Excel.Appl
阅读全文
摘要:http://blog.csdn.net/amandag/article/category/817445http://blog.csdn.net/amandag/article/details/6393384
阅读全文
摘要:using System;using System.Text;using System.Windows.Forms;using System.Xml;namespace XMLDemo{ public partial class FrmSAX : Form { public FrmSAX() { InitializeComponent(); } private void btnWrite_Click(object sender, EventArgs e) { strin...
阅读全文
摘要:using System;using System.Windows.Forms;using System.Xml;namespace XMLDemo{ public partial class FrmDOM : Form { public FrmDOM() { InitializeComponent(); } private void btnLoad_Click(object sender, EventArgs e) { XmlDocument xmlDoc = new...
阅读全文
摘要:public void MultiInsertData(DataSet ds){ string connt = "Oracle的连接字符串"; string sql = "select id,name,… from tablename";必须与ds中的一致 DataTable dt = ds.Defaults[0]; OracleConnection conn = new OracleConnection(connstr); OracleCommand cmd = new OracleCommand(sql, conn); conn.Open(); Or
阅读全文