木子屋 Dnawo's BLOG

分类:Web编程

共 939 篇

如何禁用ViewState

默认情况下,ViewState是被启用的,比如提交表单后,表单中输入的值会自动保留。但是如果不需要保留,也可以将其禁用,这样可以节省资源。下面3种方式就可以分别禁用某一个控件、某一个页面和整个应用程序的ViewState。 1) 控件禁用:将控件的EnableViewState属性设置为false; 2) 页面禁用:在页面的Page指令中添加EnableViewState="false"; 3) 应用程序禁用:在Web.Config文件中添加 示例:

C#中StringBuilder类的使用

String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 System.Text.StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。 通过用一个重载的构造函数方法初始化变量,可以创建 StringBuilder 类的新实例,正如以下示例中所阐释的那样。 1.设置容量和长度 虽然 StringBuilder 对象是动态对象,允许扩充它所封装的字符串中字符的数量,但是您可以为它可容纳的最大字符数指定一个值(默认值是16)。此值称为该对象的容量,不应将它与当前 StringBuilder 对象容纳的字符串长度混淆在一起。例如,可以创建 StringBuilder 类的带有字符串"Hello"(长度为 5)的一个新实例,同时可以指定该对象的最大容量为 25。当修改 StringBuilder 时,在达到容量之前,它不会为其自己重新分配空间。当达到容量时,将自动分配新的空间且容量翻倍。可以使用重载的构造函数之一来指定 StringBuilder 类的容量。以下代码示例指定可以将 MyStringBuilder 对象扩充到最大 25 个空白:…

将 nvarchar 值 'xxx' 转换为数据类型为 int 的列时发生语法错误

库中有两个表table1和table2,其中table2的字段m_id(varchar)对应着table1的id(int)字段,m_id值的格式为"id1,id2,id3,id4...",现在需要将m_id所对应的table1记录全部列出,执行如下SQL语句: 出错:将 nvarchar 值 '1,2,3,4' 转换为数据类型为 int 的列时发生语法错误! 也就是格式转换出错,在网上查了好久,总算有了答案,改为下边形式即可:

C#文件及文件夹操作示例

//1.---------文件夹创建、移动、删除--------- //创建文件夹 Directory.CreateDirectory(Server.MapPath("a")); Directory.CreateDirectory(Server.MapPath("b")); Directory.CreateDirectory(Server.MapPath("c")); //移动b到a Directory.Move(Server.MapPath("b"), Server.MapPath("a\\b")); //删除c Directory.Delete(Server.…

Application,Session,Cookie,ViewState,Cache的区别

1.Application 用于保存所有用户共用的数据信息。在Asp.Net中类似的配置数据最好保存在Web.config文件中。如果使用Application对象,一个需要考虑的问题是任何写操作都要在Application_OnStart事件(global.asax)中完成。尽管使用Application.Lock和Application.Unlock方法来避免写操作的同步,但是它串行化了Application对象的请求,当网站访问量大的时候会产生严重的性能瓶颈。因此最好不要用此对象保存大的数据集。 使用如下: //存放信息 Application.Lock Application="0001";…

已有打开的与此命令相关联的 DataReader,必须首先将它关闭。

原因:同时打开建立两个DataReader,而采用同一个SqlConnection(或OleDbConnection )会造成这种结果。 解决方法:两个DataReader用不同的SqlConnection。 注意:DataReader依托于SqlConnection,如果SqlConnection关闭了,DataReader也就自动消亡了~ 在使用 SqlDataReader 时,关联的 SqlConnection 正忙于为 SqlDataReader 服务,对 SqlConnection 无法执行任何其他操作,只能将其关闭。除非调用 SqlDataReader 的 Close 方法,否则会一直处于此状态。例如,在调用 Close 之前,无法检索输出参数。(摘自MSDN)