C# String使用注意事项

评论(0)浏览(140)分类:Asp.Net/C#/WCF
C# String使用注意事项 1. String 类型变量追加,或修改后的新String对象是驻留(Interned)的。 如下面代码 string s1 = abcd;  我过去想当然的认为s2 是驻留的,但实际上并非如此,用 string.IsInterned 方法检测s2是非驻留的。后来研究发现只有常量字符串才会默认驻留,其他的字符串变量哪怕是采用 new string 构造出来的,默认都非驻留,除非用string.Intern 强行..

C# WinForm如何自动关闭MessageBox

评论(0)浏览(153)分类:Asp.Net/C#/WCF
C# WinForm如何自动关闭MessageBox  C# WinForm调用MessageBox.Show显示消息对话框,提示用户确认等操作。在有些应用中我们需要通过程序来自动关闭这个消息对话框而不是由用户点击确认按钮来关闭。然而.Net framework 没有为我们提供自动关闭MessageBox 的方法,要实现这个功能,需要使用Window API 来完成。 首先需要找到这个消息对话框的窗口句柄,一个比较简单的方法就是用 ..

提高.Net平台下TCP传输速度

评论(0)浏览(98)分类:Asp.Net/C#/WCF
提高.Net平台下TCP传输速度  .Net 提供了一个NetworkStream 用于TCP 的读写,实际使用时发现直接操作效率很低,哪怕把TCP 的发送缓存和接受缓存设置很大也没有太大提高。后来在对 NetworkStream 读写前设置了缓存,性能一下子提高了很多。  从实际测试结果看设置自己的写缓存,对性能的提升最为显著。我分析了一下,其原因很可能是在向NetworkStream 序列化对象时,序..

SQLite数据库介绍

评论(0)浏览(201)分类:Asp.Net/C#/WCF
SQLite数据库介绍网上关于SQLite的介绍一抓一大把,总结起来,他有如下特点:SQLite优点及适应场合:轻量级绿色组件单一文件跨平台查询效率极高使用事务插入速度极快支持limit分页适合查询速度要求较高,内存占用较少的场合,尤其是嵌入式操作系统,如各种手机操作系统,低并发web(99.9%网站是低并发),php环境里原生支持SQLite,asp.net/.net winform里可以很方..

GridView内嵌-Detail GridView

评论(0)浏览(186)分类:Asp.Net/C#/WCF
GridView内嵌-Detail GridView  在网络上看到很多 GridView 内含子 GridView 的范例,虽然方法不同不过程序代码都有点小复杂,想说难道没有更简单易懂的方法吗?  在此文章中将用十几行的程序代码,就教你快速学会并搞定这种 Master-Detail GridView 的需求。程序代码实作  我们以 Northwind 数据库为例,首先在页面上放置二组 GridView+SqlDataSoruce,分别系结至 [Or..

CallBack-PageCommand和JSON基础

评论(0)浏览(99)分类:Asp.Net/C#/WCF
CallBack-PageCommand和JSON基础  JavaScript对象标记法,英文名称 JavaScript Object Notation(简称JSON),是一种文字格式标记法,相较于 XML 而言,JSON 明显更为简洁。而 JSON 这种精简的数据表示方式,非常适合用于 AJAX 的数据转输。  我们使用「BasePage 撰写 PageCommand 事件 (使用 CallBack)」一文中提及的 PageCommand 来执行 AJAX,并在 PageCommand 事件中回传..

CallBack-PageCommand和JSON应用

评论(0)浏览(130)分类:Asp.Net/C#/WCF
CallBack-PageCommand和JSON应用  「CallBack-PageCommand和JSON基础」 中说明了在 CallBack 时,客户端可以接收伺服端传回的 JSON 字符串,在客户端 eval 取得 JSON 对象,使 JavaScript 可以直接操作伺服端传回的对象。其实在 ASP.NET AJAX 1.0 有提供相关类别来处理伺服端/客户端的 JSON 序列化/反列序化的需求。  伺服端处理 JSON 序列化的类别为System.Web.Script.Ser..

ScriptManager-EnablePageMethod和JSON

评论(0)浏览(160)分类:Asp.Net/C#/WCF
ScriptManager-EnablePageMethod和JSON  当设定 ScriptManager 控件的 EnablePageMethods 属性值为 True 时,我们可以从客户端指令码呼叫 ASP.NET 网页中的公用静态网页方法,而且它预设就支持 JSON 序列化。  在本文中将使用 ScriptManager 的 PageMethods,重新做一次上篇「CallBack-PageCommand和JSON应用」文章的范例,来比较「CallBack PageCommand」及 「ScriptManager Pa..

GridView执行RenderControl产生的错误

评论(0)浏览(103)分类:Asp.Net/C#/WCF
GridView执行RenderControl产生的错误  GridView 控件常有需要汇出 Excel 的需求,一般都是将 GridView 使用 RenderControl 来输出其 HTML 程序代码。本文即在讨论 RenderControl 所产生的问题及解决方式,不过本文是透过 BasePage 的方式,让 RenderControl 的相关处理动作更简化。手动解决 RenderControl 所产生的问题  下面的 ControlToHTML 函式,主要是将控件转换为对应的 ..

ASP.NET ICallbackEventHandler接口

评论(0)浏览(146)分类:Asp.Net/C#/WCF
ASP.NET ICallbackEventHandler接口  ASP.NET 2.0 Callback 使得ASP.NET Server端控件能够调用服务端的方法而不需要执行一个完整的Postback过程,也就是说使得Server端控件可以很好的支持Ajax。   Callback不同于Postback之处在于向服务器发送请求时只有ViewState和用户自定义信息被发送到服务器端,请求完毕后,只返回用户自定义结果,而不会从Render页面。  GridView控件正..

Linq更新,删除,加载XML

评论(0)浏览(71)分类:asp.net-linq
Linq更新,删除,加载XMLLinq更新,删除,加载XML  场景:产品采购单。  描述:产品采购单用于描述产品的采购,它可以从各地进行采购,且每地可以采购多种商品。地址信息包括:城市,电话,联系人,日期,商品;商品包括0到多项,商品包括:产品名称,编号,描述,单价,采购总量。+?xml version=1.0 encoding=utf-8 standalone=no?purchaseOrder address city石..

Linq创建,添加,查询XML实例

评论(0)浏览(106)分类:asp.net-linq
Linq创建,添加,查询XML实例Linq Xml操作场景:产品采购单。描述:产品采购单用于描述产品的采购,它可以从各地进行采购,且每地可以采购多种商品。地址信息包括:城市,电话,联系人,日期,商品;商品包括0到多项,商品包括:产品名称,编号,描述,单价,采购总量。?xml version=1.0 encoding=utf-8 ?PurchaseOrder address city/city call/call contact/cont..

LINQ操作DataSet

评论(0)浏览(89)分类:asp.net-linq
LINQ操作DataSet  LINQ to ADO.NET分为:LINQ to DataSet、LINQ to SQL 和 LINQ to Entities。1、LINQ to DataSet 提供对 DataSet 的更为丰富的优化查询。2、LINQ to SQL 可以直接查询 SQL Server 数据库架构。3、LINQ to Entities 可以查询实体数据模型。LINQ to DataSetDataTable dtUser = dsSrc.Tables[0]; var objs = from r in dtUser.AsEnumerab..

LINQ操作Objects对象

评论(0)浏览(121)分类:asp.net-linq
LINQ操作Objects对象//LINQ查询集合对象//students对象是泛型集合,不能为null,否则抛异常 var theStudents = from s in students where s.ID 115 s.FirstName.Contains(a) //where s.ExamScores[0] == 99 select s; Response.Write(theStudents.Count().ToString() ..

使用LINQ操作XML

评论(0)浏览(174)分类:asp.net-linq
使用LINQ操作XML XML LINQ简介本章包括nXML LINQ设计原则nXML LINQ类层次n加载、解析和操作XML  XML LINQ允许我们使用我们已经熟悉的LINQ查询语法查询XML数据,而不是学习查询XML的新的API。此外,XML LINQ也提供了一些轻量级XML API用来操作XML,这些API利用了提供了类似DOM的操作,但是在设计上更加直观。本章的目的就是学习XML LINQ提供的API。为了成为XML ..

C#资源释放的方法

评论(0)浏览(159)分类:Asp.Net/C#/WCF
C#资源释放的方法  第一个,很多人用.Net写程序,会谈到托管这个概念。  那么.Net所指的资源托管到底是什么意思,是相对于所有资源,还是只限于某一方面资源? 很多人对此不是很了解,其实.Net所指的托管只是针对内存这一个方面,并不是对于所有的资源;因此对于Stream,数据库的连接,GDI+的相关对 象,还有Com对象等等,这些资源并不是受到.Net管理而统称为..

HttpContext.Current.Cache,HttpRuntime.Cache异同

评论(0)浏览(94)分类:Asp.Net/C#/WCF
HttpContext.Current.Cache,HttpRuntime.Cache异同   .NET中Cache有两种调用方式:HttpContext.Current.Cache 和 HttpRuntime.Cache,这两种方式有什么区别呢?  我们先看MSDN上的解释:HttpContext.Current.Cache:为当前 HTTP 请求获取Cache对象。HttpRuntime.Cache:获取当前应用程序的Cache。  我们再用.NET Reflector工具看看HttpContext.Cache和HttpRuntime.Cache的实现: //Syst..

C# checked、unchecked介绍

评论(0)浏览(129)分类:Asp.Net/C#/WCF
C# checked、unchecked介绍  C# checked和unchecked操作符用于整型算术运算时控制当前环境中的溢出检查。  下列运算参与了checked和unchecked检查(操作数均为整数):1) 预定义的++和――一元运算符。2) 预定义的-一元运算符。3) 预定义的+、-、、/等二元操作符。4) 从一种整型到另一种整型的显示数据转换。  当上述整型运算产生一个目标类型无法表示的大..

C# ref,out关键字

评论(0)浏览(168)分类:Asp.Net/C#/WCF
C# ref,out关键字 C# ref,out关键字  参数可以通过引用和值传递给方法。通过引用传递给方法的变量可以有调用它的方法作自由改变,所作的修改会影响原来的变量的值;在C#中,除非特别说明,所有的参数都是值传递。  这是默认情况,也可以使用ref关键字,迫使值参数通过引用传递给方法,则给方法对变量所作的修改都会影响原来对象的值。在定义该方法时把该参数..

C#重载运算符

评论(0)浏览(111)分类:Asp.Net/C#/WCF
C#重载运算符  C#运算符重载是指允许用户使用用户定义的类型编写表达式的能力。它允许用户定义的类型与预定义的类型具有相同的功能。  例如,通常需要编写类似于以下内容的代码,以将两个数字相加。很明显,sum 是两个数字之和。int i = 5;int sum = i + j;  如果可以使用代表复数的用户定义的类型来编写相同类型的表达式,那当然是最好不过了:Comple..

分析C#判断空字符串性能

评论(0)浏览(78)分类:Asp.Net/C#/WCF
分析C#判断空字符串性能C#判断空字符串的3种方法分别是:string a=;1.if(a==)2.if(a==String.Empty)3.if(a.Length==0)3种方法都是等效的,那么究竟那一种方法性能最高呢?  本人用实验说明问题。  建立3个aspx页面(为什么用网页,主要是利用Microsoft Application Center Test )WebForm1.aspxprivate void Page_Load(object sender, System.EventArgs e) { st..

C#中6种常用集合

评论(0)浏览(115)分类:Asp.Net/C#/WCF
C#中6种常用集合一.先来说说数组的不足(也可以说集合与数组的区别):  1.数组是固定大小的,不能伸缩。虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化。随后以前的数组就废弃!而集合却是可变长的  2.数组要声明元素的类型,集合类的元素类型却是object.  3.数组可读可写不能声..

C#特性Attribute介绍

评论(0)浏览(113)分类:Asp.Net/C#/WCF
C#特性Attribute介绍   C#特性(attribute)是被指定给某一声明的一则附加的声明性信息。  在C#中,有一个小的预定义特性集合。在学习如何建立我们自己的定制特性(custom attributes)之前,我们先来看看在我们的代码中如何使用预定义特性。  using System;  public class AnyClass{ [Obsolete(Don't use Old method, use New method, true)] ..

C#获取前执行的函数名,代码行,源代码文件名

评论(0)浏览(84)分类:Asp.Net/C#/WCF
C#获取前执行的函数名,代码行,源代码文件名 C#获取前执行的函数名System.Diagnostics.StackTrace st = new System.Diagnostics.StackTrace(); this.Text = st.GetFrame(0).ToString();C#获取前执行代码行,源代码文件名StackTrace st = new StackTrace(new StackFrame(true));Console.WriteLine( Stack trace for current level: {0}, st.ToString());StackFrame sf = st.Get..

主浏览器从计算机xx上收到 一个服务器宣告,认为它是传输 NetBT_Tcpip_xx 上的域主浏览器。 主浏览器已停止或一个主浏览器选举已开始。

评论(0)浏览(1805)分类:操作系统及应用软件
主浏览器从计算机xx上收到 一个服务器宣告,认为它是传输 NetBT_Tcpip_xx 上的域主浏览器。 主浏览器已停止或一个主浏览器选举已开始。事件查看器中的系统日志中出现下面的错误信息  主浏览器从计算机xx上收到 一个服务器宣告,认为它是传输 NetBT_Tcpip_{F54465A9-9C7A-482C-8EC 上的域主浏览器。 主浏览器已停止或一个主浏览器选举已开始。有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。解决办法1.HKEY_LOCAL_MACHINE\SYSTEM\CurrentC..

C#读写INI配置文件

评论(0)浏览(94)分类:Asp.Net/C#/WCF
C#读写INI配置文件  INI就是扩展名为INI的文件,其实他本身是个文本文件,可以用记事本打工,主要存放的是用户所做的选择或系统的各种参数。  INI文件其实并不是普通的文本文件.它有自己的结构.由若干段落(SECTION)组成,在每个带括号的标题下面,是若干个以单个单词开头的关键字(KEYWORD)和一个等号,等号右边就是关键字的值(VALUE).例如:[Section1]KeyWord1 = Val..

Configuration system failed to initialize

评论(0)浏览(101)分类:Asp.Net/C#/WCF
Configuration system failed to initialize  如果用这个System.Configuration.ConfigurationSettings.AppSettings[XXX]方法来读取配置文件,发生Configuration system failed to initialize错误。  可以将配置文件中的appSettings和configSections调换一下位置。

DataTable Compute方法

评论(0)浏览(151)分类:Asp.Net/C#/WCF
DataTable Compute方法  Csharp DataTable Compute方法1:聚合函数Sum()2:自由计算表达式20*30+13:bool表达式1=24:IFF逻辑表达式 IIF(201000, 0, 1) //还支持IsNull,Trim,SubString等  一个小应用:让DataTable模拟Excel的Formula功能。Excel中的Formula功能强大,如果能让DataTable有类似的功能就好了。大部分事件DataTable只是用作数据载体,其实很少用它做..

什么是ftp主动模式与被动模式

评论(0)浏览(136)分类:操作系统及应用软件
什么是ftp主动模式与被动模式   FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。  FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和..

flashfxp执行Opening ASCII mode data connection for /bin/ls步骤很慢

评论(0)浏览(290)分类:操作系统及应用软件
flashfxp执行Opening ASCII mode data connection for /bin/ls步骤很慢  今天在使用flashfxp链接一个ftp站点时,发现半天没反应,停止在Opening ASCII mode data connection for /bin/ls步骤,列表里面什么都不显示,断开重新连接了几次都是在Opening ASCII mode data connection for /bin/ls这里无法继续执行下去。  后面想起来最近链接了一个主动模式的站点,取消了flashfxp的被动模式,不知道是不是这个问题。..