首页 技术教程 实用代码 注册破解 正则表达式 网址导航 电子书籍

在.NET程序中正确使用String类型

在实际程序中,String类型用得非常广泛,然而,由于.NET对String类型变量的独特管理方式,使用不当,会严重影响程序的性能。我们分几个方面来谈这个问题: 1、了解String数据的内存分配方式 编写一个控制台应用程序,输入以下测试代码: class Program { static void Main(string[] args) { String s = "a"; s = "abcd"; } } 使用.NET Framework 2.0 SDK提供的ildasm.exe工具查看生成的MSIL指令: .method private hidebysig static void Main(string[] args) cil managed { .entrypoint // 代码大小 14 (0xe) .maxstack 1 .locals init ([0] string s) IL_0000: nop IL_00...
类别:网页编程 - ASP.NET    查看:91    更新:2014-05-20

调用.NET程序集中的方法

虽然Biztalk Server提供了众多的内置功能,然而在一些情况下可能还需要调用程序集中的函数。因为在.Net程序集中,可以非常方便地调用Web Service、访问数据库;另一方面,有些函数是程序集中已经写好的,为了增加软件的复用,便于软件版本的管理,使用现有的程序集也在情理之中。 本文通过一个简单实例,介绍Biztalk应用中调用程序集的方法。这个实例完成的功能,在调用Web Services一文中实现过,只不过实现的方式用所差别,一个是调用Web Service,一个是调用.net程序集。 首先,我们创建一个MyFunction的项目,其中只包括一个的类文件class1,我们要在Biztalk中调用该类的CheckUserId静态方法。class1的源程序如下: ...
类别:网页编程 - ASP.NET    查看:91    更新:2014-05-20

ASP.NET2.0中TextBox的两个有趣的属性

在以前的ASP.NET 1.x版本中,设置为ReadOnly的TextBox控件在客户端更改了值后,在服务器端仍然可以得到修改后的值,但在ASP.NET 2.0中,这种做法已经限制。这是为了提高应用程序安全性所考虑的。下面就是TextBox控件获得数据的内部方法,由此可以看出ReadOnly的限制: protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection) {  base.ValidateEvent(postDataKey);  string text1 = this.Text;  string text2 = postCollection[postDataKey];  if (!this.ReadOnly && !text1.Equals(text2, StringComparison.Ordinal))  { this.Text = ...
类别:网页编程 - ASP.NET    查看:116    更新:2014-05-20

.NET 2.0里强类型数据创建多层应用

.Net 2.0正式版的正式发布,对我们程序开发人员来说无疑是一件很大的喜事,已经很多的人开始了解并使用.NET 2.0。Visual Studio 2005 的一些新的增强功能和ADO.NET 2.0的新特性让我们开发高可伸缩的多层数据库应用程序更加简单和快捷。本文将带领大家使用Visual Studio 2005来创建一个N层数据库应用的示例,并介绍一些NET 2.0和 Visual Studio 2005相关的知识。 在.NET 1.1下就可以使用强类型数据集,可是在Visual Studio 2003里开发起来还是有一些不方便,在Visual Studio 2005里对DataSet的设计视图做了很大的改进,因为ADO.NET 2.0增加了TableAdapter对象,所以现在也可以在DataSet设计视图里添加...
类别:网页编程 - ASP.NET    查看:112    更新:2014-05-20

SQL存储过程在.NET数据库中的应用

一.前言: 存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。总的来说,存储过程具有以下一些优点:[newsad][/newsad] ◆存储过程允许标准组件式编程 ◆存储过程能够实现较快的执行速度 ◆存储过程能够减少网络流量 ◆存储过程可被作为一种安全机制来充分利用 本文作者将向大家介绍.NET数据库应用程序中存储过程的应用,以及如何将它与ADO.NET中的SqlDataAdapter对象、DataSet对象等结合...
类别:网页编程 - ASP.NET    查看:120    更新:2014-05-20

Orcale与Asp.net的端口冲突

Web服务的inetinfo.exe与Oracle的Apache.exe进程所占用的端口都包括80端口。 如果用户是在安装了Oracle之后,再使用.NET创建ASP.NET应用程序出现下面情况的错误: VS.NET检测到web服务器运行的是ASP.NET 1.0版,要创建或打开的应用程序可以配置成与1.0兼容,但将无法运行1.1的新功能,则很可能是应为上面所说的端口冲突。 解决方法: 1)修改Oracle进程的端口 到路径 oracleora90ApacheApacheconf 下修改httpd.conf 和 httpd.conf.default 内Listen 80修改为其他端口即可。例如:Listen 8080或其他,建议在3000以上的大一点的数值。 2)停止Oracle的Http服务器 可以直接用进程管理器 关闭A...
类别:网页编程 - ASP.NET    查看:129    更新:2014-05-20

.NET中的企业库异常处理块简述

企业库异常处理块(Enterprise Library Exception Handling Block)提供了处理异常所需的所有基本代码,现在,你可以不用再编写这些重复性的异常处理代码,只需简单地在程序中使用它们,就可保证一致且高效地异常处理。 在一个理想的程序世界中,编写的所有代码都是运行无误的,但现实是,无论你在编写代码时多么地小心,错误总会发生,所以,必须要有一个高效、可配置的框架(framework),以一种"优雅"方式来处理错误;另外,也必须要懂得,人们通常以对程序的用户体验带来多大影响,来衡量一种异常处理的有效性。因此,一个好的异常处理解决方案不单是从用户的观点"优雅"地处理错误,而且还可通过开发者或系统管...
类别:网页编程 - ASP.NET    查看:101    更新:2014-05-20

Asp.net自动返回上次请求页面

有时进入管理页面时,session和cookie消失时,要返回登录页面,登录后我们仍想返回刚才管理操作的这个页面.这样很方面.可以用Request的一个属性实现Request.UrlReferrer 获取有关客户端上次请求的 URL 的信息,该请求链接到当前的 URL。 当一个页面跳到此页面时,它就会记录跳到这个页面的URL,然后利用这个URL返回.小技巧,记录下来 protected void Page_Load(object sender, EventArgs e)  {  ViewState["UrlReferrer"] = Request.UrlReferrer.ToString();    HyperLink1.NavigateUrl = (string)ViewState["UrlReferrer"];  Response.Wr...
类别:网页编程 - ASP.NET    查看:117    更新:2014-05-20

Asp.net下的对象成员数据绑定器实现

用过MonoRail的朋友应该知道它提供的对象成员数据绑定功能非常方便,通过标记参数属性或方法就可以自动把提交回来的数据和对象成员进行绑定;有了这些方便的功能的确可以节省大量的set代码。不过这些功能只是MonoRail提供,于是实现类似的功能方便自己开发。 实现目标:可以灵活方便地实现数据绑定。 OrderSearch search = FormContext.BindObject<OrderSearch>(); Orders order = FormContext.BindObject<Orders>("order"); 制定规则和约束 首先确定WEB提交的数据和成员属性的映射关系,可以通过名称约定的方式: <input id="Text1" name="companyname" t...
类别:网页编程 - ASP.NET    查看:98    更新:2014-05-20

ASP.Net 2.0 图形控件简述

ASP.NET 2.0包含两个图形控件,一个Image,一个是ImageMap控件。 1、Image控件是用来显示图象的,对应于<img />标签,典型的Image控件格式如下 id="imgRandom" ImageUrl="Picture.gif" AlternateText="Picture" DescriptionUrl="" GenerateEmptyAlternateText="" ImageAlign=""/> id 是用来标识控件的, ImageUrl 是图片链接, AlternageText 是无法显示图片时显示的文字, DescriptionUrl 提供一个图片的详细说明的链接 GenerateEmptyAlternateText 将AlternateText设置为空 ImageAlign 用来提供相对于...
类别:网页编程 - ASP.NET    查看:134    更新:2014-05-20

在ASP.NET 2.0中实现主页嵌套

现在的很多商业公司都设有不同的部门,而这些部门在公司的网站上都有自己的子网站。一般情况下,每一个部门都会根据自己的需要来维护各自的网站。这样做虽然会使公司的网站显得丰富多彩,但这却会对用户的访问带来不便,也就是说,由于各个部门的子网站没有保持一致性而使用户在浏览网站时造成了困难。幸运的是,ASP.NET2.0为我们提供了一种解决方案,这就是主页嵌套。[newsad][/newsad] 建立嵌套主页 首先需要建立一个标准的主页,在这个主页上需要加上一些共用的东西,如公司的Logo、公司名称、页脚以及菜单等,而每个部门的子网站必须使用这个标准的主页。每一个部门可以根据自己的业务需要建立各自的主页,然后将这些部门的主页...
类别:网页编程 - ASP.NET    查看:99    更新:2014-05-20

剖析ASP.NET AJAX的面向对象思想

人们期待已久的ASP.NET AJAX v1.0正式版终于发布了。现在你能用Microsoft ASP.NET AJAX的javascript很容易的写出丰富的、交互式的web应用。尤其值得关注的是Microsoft AJAX Library增加了面向对象的支持,而以前javascript是不支持面向对象开发的。现在icrosoft AJAX Library能很好的支持类、名字空间、继承、接口、枚举、反射等特征。这些新增加的功能类似于.NET Framework,这使得开发ASP.NET AJAX应用变得容易维护,容易扩充。现在我们看看Microsoft AJAX Library是如何支持以上特征的。 1.类、成员和名字空间 在Microsoft AJAX Library中,所有的JavaScript类都继承自object(...
类别:网页编程 - ASP.NET    查看:113    更新:2014-05-20

如何使用.NET访问MySQL数据库

.NET的数据库天然支持MSSQLServer,但是并非其他数据库不支持,而是微软基于自身利益需要,在支持、营销上推自己的数据库产品;但是作为平台战略,他并非排斥其他数据库,而是参考java体系提出了一套数据库访问规范,让各个第三方进行开发,提供特定的驱动。 [newsad][/newsad]   MySQL是免费的数据库,在成本上具有无可替代的优势,但是目前来讲,并没有提供。微软把MySQL当作ODBC数据库,可以按照ODBC.Net规范进行访问,具体参考   http://www.microsoft.com/china/community/Columns/Luyan/6.mspx   而实际上,针对ODBC。Net的需要配置DSN的麻烦,而是出现了一个开源的系统MySQLDri...
类别:网页编程 - ASP.NET    查看:142    更新:2014-05-20

过滤ASP.NET输出HTML中的无用空格

刚才“不小心”检查了一下ASP.NET生成的代码,惊讶地发现ASP.NET输出的代码居然如此地不紧凑,在标签之间有无数的空格和制表符(TAB),特别是用了嵌套表格之后,那景象真是惨不忍睹啊。   照理说在ASP.NET生成的代码中添加这么多无用的空格/tab可能是为了使生成的HTML代码更具可读性,但是由此带来的问题就是使输出的代码变大了,在带宽有限的今天简直就是一种犯罪,浪费用户的钱财,影响用户的体验嘛!而且ASP.NET属于服务器端编程,不可能会直接编辑最终生成的HTML代码,就算把所有的空格/Tab都去了,也不会带来任何不好的影响的吧!?   基于以上考虑,祭出Reflector,果然发现H...
类别:网页编程 - ASP.NET    查看:85    更新:2014-05-20

ASP.NET 2.0 AJAX中Webservice调用方法

ASP.NET 2.0 Ajax中能够在客户端js中很方便地调用服务器Webservice,以下为一些调用的示例。笔者安装的ASP.NET 2.0 AJAX 版本为AJAX November CTP。 三个示例分别为: 1 带参数的WS方法 2 不带参数的WS方法 3 参数类型为DataTable的WS方法 一、WebMethod 注意要点: 1 WebMethod类需要添加命名空间 Microsoft.Web.Script.Services,此空间需要引用Microsoft.Web.Preview.dll 2 类声明加入标签 [ScriptService] 3 在Asp.net 2.0里可以直接用DataTable作为返回类型了,但是需要在Web.config文件添加序列化转换器的属性。DataSet、DataTable、DataRow均有转换器 ...
类别:网页编程 - ASP.NET    查看:125    更新:2014-05-20

使用ASP.NET DetailsView控件处理数据

DetailsView 控件 在ASP.NET 1.1中,对单条记录的操作需要自己定义,并加以拓展,但到了2.0,我们有了DetaillsView控件,这就变得简单又直截了当了。这个控件可以和任意数据源进行绑定,并使用它的数据操作命令集。 DetailsView控件需要先和数据源控件绑定在一起。数据源控件负责连接存储的数据和返回选中数据的具体操作。把DetailsView控件绑定到数据如此简单,只需设置DataSourceID属性声明一下就可以了。同时,也可以利用代码选项(code option)。 具体可进行的操作和数据源类型有关,但是,只要下层数据源允许并且相应的SQL命令已经定义,通过DetailsView控件都可以对其下层数据源中的数据进行分页、更新、...
类别:网页编程 - ASP.NET    查看:116    更新:2014-05-20