.net 2.0
文章平均质量分 69
shixin1198
.net java 开发,项目管理
展开
-
C#中将dll汇入exe,并加壳
这几天在做自己的一个小程序,因为使用了3层架构,运行目录下有很多dll文件,最终发布时,我打算将dll文件都合并到exe文件中去。微软发布的免费软件ILmerge可以完成这项工作,研究了一下,其用法如下: 1、合并file1.dll、file2.dll到destination.dll ILmerge /ndebug /target:dll /out:C:/destination.dl转载 2008-10-08 17:01:00 · 782 阅读 · 1 评论 -
构建插件式的应用程序框架(八)-视图服务的简单实现
我在前一篇文章里提到,对于停靠工具栏或者是视图最好是不要将实例放到词典中,而是将工具栏或者视图的类型放到词典中,因为视图类型会经常的被重用,并且会经常被关闭或者再打开。当实例被关闭后,资源就被释放了,对于实例的管理就会比较麻烦,所以我们分为两步走。在插件被加载的时候,我们只注册类型,在应用程序运行的时候,我们通过某种途径来实例化他。 我修改的以前的例子,主要突出本次演示的功能。这次的例子实现的功转载 2008-10-08 17:58:00 · 385 阅读 · 0 评论 -
构建插件式的应用程序框架(四)-服务容器
在构建插件式的应用程序框架(二)----订立契约一文中,可以看到我们的IApplication接口是派生于IServiceContainer接口的。为什么要派生于IServiceContainer呢?我们来看看IServiceContainer的定义,它有几个AddService方法和RemoveService方法以及从IserviceProvider继承过来的GetService方法。Serv转载 2008-10-08 17:53:00 · 556 阅读 · 0 评论 -
打sp1 后ASP.NET 1.1无法提交的问题
今天在产品里发现了一个bug,多个aspx页面都无法提交,点了提交按纽都没有反应,初步猜测是Validate的问题。详细的解决过程就不写了,将最后的结论总结如下: .NET Framework 1.1的补丁对Validator有影响,如果使用补丁前的WebUIValidation.js,会导致包含有Validators的页面无法提交。 打补丁前,WebUIValidation原创 2008-01-15 11:48:00 · 529 阅读 · 0 评论 -
.Net里用XSD作XML合法性验证的代码
现有Books.xml文件:xml version="1.0" encoding="UTF-8"?> edited with XMLSpy v2006 sp2 U (http://www.altova.com) by 10030452 (Kodak) -->books xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:no原创 2008-01-12 17:02:00 · 545 阅读 · 0 评论 -
C#操作Word
前提:导入COM库:Microsoft word 11.0 Object Library.引用里面就增加了:创建新Word object oMissing = System.Reflection.Missing.Value; Word._Application oWord; Word._Document oDoc;转载 2008-01-04 14:36:00 · 377 阅读 · 0 评论 -
asp.net读excle的数据类型不统一取出空值问题
小弟之前写读取excel文件时经常碰到文件中明明有值,读取出来为空。当时傻傻只对excle文件考量,一次次尝试不经意把所有栏位的数据类型改为文本就糊涂的认为这是一个办法今天我再次写读取excel文件还是null问题。从www.connectionstrings.com网站excel的连接字串的说明中找到TypeGuessRows要修改为0。虽然不明白,可当修改为零时,程式读取得数据再没有nu转载 2008-03-19 15:08:00 · 635 阅读 · 0 评论 -
c#socket发送邮件详解
邮件发送在web应用中是屡见不鲜的,在asp时代大家多是利用一些第三方提供的组件如JMAIL、ASPMAIL等进行邮件发送。自从微软推出Asp.net后,很多程序员开始转向采用C#作为主要的开发语言。asp.net提供了更加强大的功能,同时也提供给了大家一个SMTP类作为邮件发送之用。但是,随着垃圾邮件的广泛传播,很多邮件服务提供商纷纷增加了SMTP 的认证手续,也就是ESMTP,而微原创 2007-12-18 17:48:00 · 1113 阅读 · 4 评论 -
创建可在网页下载安装的ActiveX控件(通过Setup.exe安装)
为完成网页自动下载并安装控件的功能,需要通过C#创建一个ActiveX控件,然后将该控件置于安装程序中,在打开网页的时候下载、安装并注册该ActiveX控件。本文是采用VS2005创建的,VS2003创建过程与之相似。 首先,创建一个类库,为其命名为CreateActiveXEmail: 删除掉默认生成的类Class1.cs,创建一个接口ActiveXEmailInterf原创 2007-12-17 14:34:00 · 1715 阅读 · 0 评论 -
动态编辑母版页(与母版页通信,如修改控件属性等)
在 CSDN 上常见人问到形如“如何在使用了母版页的页面上动态修改母版页的内容”,“如何与母版页通信”等这样的问题。 其实要解决这些问题只需简单的两步就够了: 1. 在母版页上创建一个公共的属性. 2. 在目标页(即使用了母版页的页面)添加 MasterType 指令. 这样在目标页就可以与母版页通信, 修改控件属性等. 实例源码如下, 创建一个名为 MasterPage.master 的母版页,原创 2007-12-05 17:36:00 · 1253 阅读 · 0 评论 -
C#插件构架实战(Jack H Hansen )
一、引言 1. 问题的引入 假设你设计的程序已经部署到用户的计算机上,并且能够正常运行了。但是有一天,用户打来了电话——他们要求增加新的功能。确定了用户的需求后,你竟然发现原有的软件架构已经无法胜任新增任务的需求——你需要重新设计这个应用了!但问题是,就算你又用了一个开发周期完成了用户需要的应用,却不能保证用户的需求不会再次变更。也就是说,需求蔓延的可能性依然存在。因此,这种情况下插件构架更能显转载 2008-10-08 17:13:00 · 366 阅读 · 0 评论 -
构建插件式的应用程序框架(一)-开篇
说起插件(plug-in)式的应用程序大家应该不陌生吧,记得很早以前有一款很流行的MP3播放软件winmap,它是我记忆里最早认识的一款使用插件模式的应用程序,你可以使用他的插件管理器插入很多的音乐效果器,皮肤,甚至是歌词显示的面板。接下来看到了Photoshop使用插件模式管理虑镜。最后发现只要是大一点的应用程序基本都使用了插件式的程序框架,就拿我们最常用的工具来说吧,Visual Studi转载 2008-10-08 17:18:00 · 537 阅读 · 0 评论 -
asp.net真的是并行处理request的吗?
asp.net真的是并行处理request的吗?<br />如果在两个瀏覽器中,打开同一个web系统的两支asp.net程式,这2支程式会并行执行吗?<br />那么在一个瀏覽器中打开这两支程式呢?<br />第一种情况,可能很容易就知道是并行的,因为不管IE还是chrome,或是其它瀏覽器,在一个窗口中,一般都是共用一个session,因此这种情况,和两台不同的机器的请求应该是一样的。<br /> <br />然而对于第二种,情况就不那么简单了。<br />先做个简单的试验<br />1.新建web站台,原创 2011-05-24 10:43:00 · 935 阅读 · 2 评论 -
阻止同一个浏览器的不同窗口间共享session
<br />1. cookie的作用<br />简单来说,cookie可以让网站在浏览器端存储数据。当浏览器访问网站时,会把对应此网站的cookie中的数据传送给该网站。<br />cookie的一个重要特性是生命周期。若cookie的生命周期为0,则浏览器会把cookie存放在本进程的内存中,随浏览器的关闭而消失。若cookie的生命周期不为0,则浏览器会把cookie存放在硬盘中,随cookie生命周期的结束而结束。<br />cookie的生命周期由网站来设置。当然,浏览器是否接受coo原创 2011-05-24 10:48:00 · 2978 阅读 · 0 评论 -
OLEDB读取Excel,字段长度超过255时自动截取问题
<br />今天写了个OLEDB读取Excel入库的程序,当Excel中包含有过长的字段时总是自动给截取,费了一天时间终于找到原因了。我写了个总结拿出来给大家分享。<br /> <br /> 首先介绍一下OLEDB读取Excel的传统方法<br /> //Excel转到DataTable<br /> public static DataTable GetDataTableFromExcelFirstRow(string filePath)<br /> {<br /原创 2010-06-22 20:39:00 · 2447 阅读 · 2 评论 -
ASP.NET Web Garden模型
本文介绍ASP.NET Web Garden模型,Web Garden模型可以通过 machine.config 文件中的 部分进行配置。 Web Garden模型Web Garden模型可以通过 machine.config 文件中的 部分进行配置。请注意, 部分是唯一不能放在应用程序特定的 web.config 文件中的配置部分。这就是说,Web Garden原创 2010-04-15 14:48:00 · 282 阅读 · 0 评论 -
什么是GAC?它解决了什么问题?
GAC全称是Global Assembly Cache作用是可以存放一些有很多程序都要用 到的公共Assembly,例如System.Data、System.Windows.Forms等等。这样,很多程序就可以从GAC里面取得 Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录下面。举例而言,如果没有GAC,那么势必每个WinForm程 序的目录下就都要从C:/W原创 2009-12-03 21:28:00 · 442 阅读 · 0 评论 -
构建插件式的应用程序框架(七)-基本服务
既然做好了框架,我们就希望为某个目标服务,我们要提供一些基本的服务,方便用户继续扩展他的功能。首先想到的功能就是,菜单,工具栏的管理,接下来我们要实现一些更流行的功能,比如停靠工具栏等等。 如何实现这些服务呢?我们希望我们的插件在运行时可以获得应用程序本身的菜单,工具条,停靠工具栏等等,然后向他们添加项目,比如加入一个菜单项,添加一个工具栏按钮。为了在运行时获得某个菜单或者工具栏,我们要为每一个转载 2008-10-08 17:57:00 · 367 阅读 · 0 评论 -
构建插件式的应用程序框架(六)-通讯机制
前天发了构建插件式的应用程序框架(五)----管理插件这篇文章,有几个朋友在回复中希望了解插件之间是如何通讯的。 这个系列的文章写到这里,也该谈谈这个问题了,毕竟已经有了插件管理。不知道大家有没有注意到我在第四篇文章里谈到的服务容器(Service Container),Service是我所提到的插件式的应用程序框架的基础,我们也可以回头看看IApplication的接口定义,IApplicat转载 2008-10-08 17:55:00 · 428 阅读 · 0 评论 -
构建插件式的应用程序框架(五)-管理插件
我们现在已经搭建了插件式的应用程序框架,接下来的工作就是要充实框架的内容,提供基本的服务,也就是Service。我想首要的任务就是提供插件的管理服务,我在前面的文章也提到了,要实现动态加载必须要知道插件寄宿在哪里,哪些要加载,哪些不加载,这些就是这篇文章要讨论的问题。 首先解决的就是插件放在什么地方,我采取的传统的方法,将插件放到应用程序所在目录下的制定目录,我会在应用程序所在的目录下创建一个文转载 2008-10-08 17:54:00 · 464 阅读 · 0 评论 -
构建插件式的应用程序框架(三)-动态加载
不管你采用什么方式实现插件式的应用程序框架,核心还是动态加载,换句话说,没有动态加载技术也就无所谓插件式的应用程序框架了。使用Com实现的话,你可以利用Com的API通过ProgID来动态创建COM对象,如果使用普通DLL,你需要使用Windows 的API函数LoadLibrary来动态加载DLL,并用GetProcAddress函数来获取函数的地址。而使用.NET技术的话,你需要使用Asse转载 2008-10-08 17:32:00 · 521 阅读 · 0 评论 -
构建插件式的应用程序框架(二)-订立契约
无论是用COM的方式,还是普通DLL,抑或.NET方式来实现插件框架,首先要面临的问题就是如何订立契约。如同我上一篇文章讲到的一样,契约是应用程序和插件之间进行交互的依据和凭证。应用程序必须声明我有什么样的功能可被插件使用,并且插件必须符合什么条件才能被我使用。反之,插件必须要知道应用程序提供什么样的功能,我才能将自己的功能融入到应用程序的体系中。本系列文章主要讲如何使用.NET实现插件式的应用转载 2008-10-08 17:31:00 · 577 阅读 · 0 评论 -
C#四舍五入问题
C#如 Math.Round(1.25,1) = 1.2SQL 中 select round(1.25,1) 返回的是1.3C#中实现四舍五入的参考代码:如2.45要四舍五入到小数后一位,可以先给2.45*10,然后加0.5,再取整,再除以10就OK了 public double C1Round(double value, int digit) { double vt =转载 2008-02-18 10:42:00 · 651 阅读 · 0 评论 -
ASP.NET 2.0 中动态添加 GridView 模板列 以及取值的例子
...@ Page Language="C#" %>...@ Import Namespace="System.Data" %>DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">script runat=转载 2007-11-14 11:41:00 · 2372 阅读 · 0 评论 -
用Windows自带的任务计划实现一个程序的循环执行和关闭
以QQ为例,我们要实现其从某时刻起执行,过了两个小时后自动关闭,再重新执行,如此周而复始。 建立启动QQ的任务计划 具体步骤如下: 1、控制面板→任务计划→新建一个任务计划→选择QQ为所要执行的程序→选择每天,每周,每月,一次性皆可(按具体情况选择)→输入用户名和密码→完成。 2.选择刚才建立的计划→属性→计划→高级→重复任务→选择合适的时间间隔和持续时间(这里选择2小时5分钟和2翻译 2008-01-24 16:34:00 · 2719 阅读 · 0 评论 -
ASP.NET 2.0中实现跨页面提交
在ASP.net 1.X 版本中,页面都是提交到自己本身,并不能方便的指定需要提交的目的页面。例如FirstPage.aspx中的button只能提交到FirstPage.aspx,而不能提交到SecondPage.aspx。很多时候,ASP.NET 1.X这样工作方式使我们的开发方式受到不少限制。熟悉ASP/JSP/PHP的朋友大概很不习惯,因为以前经常使用的提交方式突然无法使用,虽然也有解决这转载 2006-10-18 16:29:00 · 423 阅读 · 0 评论 -
asp.net2.0中2种读取web.config数据库连接字符串
方法一:string myConn = System.Configuration.ConfigurationManager.ConnectionStrings["sqlConnectionString"].ConnectionString;方法二:string connString = System.Web.Configuration.WebConfigurationManager.Conne原创 2006-10-18 16:21:00 · 387 阅读 · 0 评论 -
有感Atlas - 优点、缺点、学习
在我看来,Atlas是很了不起的,而它的了不起体现在三个地方: 1. Declarative Syntax: 应该有不少人有过在HTML Element中嵌入浏览器无法识别的属性,而在某个地方通过自己编写的Javascript方法读出并加以一些功能。其实我在数年前总觉得这样的方法是 tricky solution。我不喜欢tricky的方法,特别是无条理性的tricky solution。这样的转载 2006-10-18 16:56:00 · 465 阅读 · 0 评论 -
Master Page 初探
1 Master Page的组成Master Page主要由两部分组成:Master Page(母版页)本身和一个或多个Content Page(内容页)。1.1母版页(Master Page)母版页与用户控件(User Control)类似,主要的不同点有:(1)母版页的扩展名为.master,如Default.master。该扩展名和System.Web.HttpForbiddenHandle原创 2006-10-18 16:42:00 · 540 阅读 · 0 评论 -
ASP.NET 2.0中使用multiview控件
在ASP.net 2.0中,增加了许多新的控件和功能,大大方便了开发者的开发。这次要讲解的是在ASP.NET 2.0中新增的multiview控件的使用。所谓multiview控件,实际上是有点象在c/s开发中很常见的tabcontrol控件,可以在一个页面中,放置多个"view"(我们称为选项卡),比如可以用multiview控件,可以让用户在同一页面中,通过切换到每个选项卡,从而看到要看的内容原创 2006-10-18 16:24:00 · 546 阅读 · 0 评论 -
ASP.NET 2.0中合并 GridView 的表头单元格
在实际工作中,往往需要合并表格头部的单元格,下面就是一个实现的例子。运行结果如图:C# ...@ Page Language="C#" AutoEventWireup="true" %>DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xht转载 2006-10-08 10:11:00 · 387 阅读 · 0 评论 -
ASP.NET 2.0中TextBox服务器控件的ReadOnly和Disabled属性
在以前的ASP.NET 1.x版本中,设置为ReadOnly的TextBox控件在客户端更改了值后,在服务器端仍然可以得到修改后的值,但在ASP.NET 2.0中,这种做法已经限制。这是为了提高应用程序安全性所考虑的。下面就是TextBox控件获得数据的内部方法,由此可以看出ReadOnly的限制:protected virtual bool LoadPostData(string p转载 2006-10-08 10:20:00 · 510 阅读 · 0 评论 -
ASP.NET 2.0 中动态添加 GridView 模板列的例子
动态添加列,关键是实现 ITemplate.InstantiateIn 方法。下面是一个添加 GridView 模板列的例子。...@ Page Language="C#" %>...@ Import Namespace="System.Data" %>DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://转载 2006-10-08 16:35:00 · 437 阅读 · 0 评论 -
ASP.NET 2.0中GridView无限层复杂表头的实现
实现方法就是给单元格填充我们想要的格式代码。C#@ Page Language="C#" AutoEventWireup="true" %>DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">转载 2006-10-08 10:26:00 · 424 阅读 · 0 评论 -
ASP.NET 2.0中将 GridView 导出到 Excel 文件中
下面代码实现将 GridView 导出到 Excel文件中。值得注意的是VerifyRenderingInServerForm重载方法: MSDN上的 VerifyRenderingInServerForm 方法的描述: 必须位于 标记中的控件可以在呈现之前调用此方法,以便在控件被置于标记外时显示错误信息。发送回或依赖于注册的脚本块的控件应该在 Control.Render 方法的重原创 2006-09-30 14:37:00 · 496 阅读 · 0 评论 -
ASP.NET 2.0数据缓存功能简介
在ASP.NET 2.0,新增加了不少新的功能和控件。其中,在数据的缓存功能,比asp.net 1.1有了很大的改变。众所周知,数据的缓存功能是十分重要的,我们可以把一些在相对一段时间内不发生改变的数据放在缓存中,这样,就不必要每次去读取数据库,当下次再需要这些数据时,可以直接从缓存中取得,大大增强了效率。 而在asp.net 1.1 中,已经比较好地实现了数据的缓存功能,但有一个小问题,转载 2006-10-18 16:35:00 · 501 阅读 · 0 评论 -
什么是web2.0
Web2.0是以Flickr、43Things.com等网站为代表,以Blog、TAG、SNS、RSS、wiki等社会软件的应用为核心,依据六度分隔、xml、ajax等新理论和技术实现的互联网新一代模式。”Blog——博客/网志:Blog的全名应该是Web log,后来缩写为Blog。Blog是一个易于使用的网站,您可以在其中迅速发布想法、与他人交流以及从事其他活动。所有这一切都是免费的。RSS—转载 2006-11-02 13:21:00 · 489 阅读 · 0 评论 -
Comet:基于 HTTP 长连接的“服务器推”技术
很多应用譬如监控、即时通信、即时报价系统都需要将后台发生的变化实时传送到客户端而无须客户端不停地刷新、发送请求。本文首先介绍、比较了常用的“服务器推”方案,着重介绍了 Comet - 使用 HTTP 长连接、无须浏览器安装插件的两种“服务器推”方案:基于 AJAX 的长轮询方式;基于 iframe 及 htmlfile 的流方式。最后分析了开发 Comet 应用需要注意的一些问题,以及如何借助开源原创 2007-09-26 18:25:00 · 552 阅读 · 0 评论 -
C#.net 支付宝接口
生成URL链接 using System;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System原创 2007-10-19 17:07:00 · 507 阅读 · 0 评论 -
汉字转化为拼音的c#实现代码
using System;using System.Collections;using System.Text;public class Chinese2Spell{ /**/ /// /// 获得拼音 /// /// 汉字 /// //调用格式:GetSpell(string str_Spell) //str_Spell是要转换的汉字原创 2007-10-19 18:17:00 · 545 阅读 · 0 评论