ASP.NET之四——ASP.NET DEV
上下文对象
===================================
一种对象,它当MTS服务器组件在一个活动中运行时跟踪该组件的属性,包括被跟踪组件的激活状态、安全信息、事务处理状态(如果存在)等。这样就免除了让组件去跟踪其自身状态。
上下文对象是web服务器上基于web应用的一个背景环境对象,上下文对象提供了一个同一web应用内不同资源间共享信息的场所。
asp.net中做状态管理有哪些方式
===========================================
Web表格网页是基于HTTP的,它们没有状态,这意味着它们不知道所有的请求是否来自同一台客户端计算机,网页是否受到了破坏,以及是否得到了刷新,这样就可能造成信息的丢失。于是,状态管理就成了开发互联网应用程序中的一个实实在在的问题。
我们在ASP中能够通过cookie、查询字符串、应用程序、对话等轻易地解决这些问题。现在到了ASP.NET环境中,我们仍然可以使用这些功能,只是它们的种类更多了,功能也更强大了。
管理互联网网页主要有二种不同的方法:客户端和服务器端。
1、客户端的状态管理:
在客户端、服务器之间的多次请求-应答期间,服务器上不保存信息,信息将被存储在网页或用户的计算机上。
A、Cookie
cookie是存储在客户端文件系统的文本文件中或客户端浏览器对话的内存中的少量数据,它主要用来跟踪数据设置。下面我们举例说明:假设我们要定制化一个欢迎互联网网页,当用户请求缺省的互联网网页时,应用程序会首先检查用户在此前是否已经注册,我们可以从cookie中获取用户的信息:
[c#]
if (Request.Cookies[“username”]!=null)
lbMessage.text=”Dear “+Request.Cookies[“username”].Value+”, Welcome shopping here!”;
else
lbMessage.text=”Welcome shopping here!”;
如果要存储用户的资料,我们可以使用下面的代码:
[c#]
Response.Cookies[“username’].Value=username;
这样,当用户请求该网页时,我们就可以方便地识别该用户。
ASP.NET中的状态管理(2)
B、隐藏域
隐藏域不会显示在用户的浏览器中,但我们可以象设置标准控制的属性那样设置其属性。当一个网页被提交给服务器时,隐藏域的内容和其他控制的值一块儿被送到HTTP Form集合中。隐藏域可以是任何存储在网页中的与网页有关的信息的存储库,隐藏域在其value属性中存储一个变量
相关文档:
ASP.NET中,若要将一个URL参数值赋值给一个变量,都得先判断参数是否存在,否则等待你的很可能就是"未将对象引用设置到对象的实例",以前都是
Request.QueryString["xx"] != null比较后再赋值,但今天在一个项目中发现竟还报错,代码大致结构如下:
复制内容到剪贴板
程序代码
int id = 0;
if (R ......
每个Web应用程序都要规划自己的目录结构,除了自己设计的目录结构意外,ASP.Net也定义一些有特殊意义的目录。
1.Bin:这个目录包含了所有的预编译的ASP.NET的Web应用程序使用的.Net程序集(通常是DLLs),这些程序集也包括预编译的网页类,以及被这些类所引用的其他的程序集。
&nb ......
在开发中经常会遇到这样的情况,在部署程序时为了保密起见并不将源代码随项目一同发布,而我们开发时的环境与部署环境可能不一致(比如数据库不一样),如果在代码中保存这些配置这些信息部署时需要到用户那里更改代码再重新编译,这种部署方式非常麻烦。
在.net中提供了一种便捷的保存项目配置信息的办法,那就是利用配置 ......
如果仅仅是上传一个文件,最好是使用FileUpload控件, 可以使用FileUpload1.FileContent.Length得到文件大小, FileUpload1.FileBytes得到其字节数组, 代码略.
如果要上传多个文件, 其客户端代码与使用ASP.NET上传多个文件到服务器基本相同, 本例中加入了下载的示例代码。
效果图如下:
数据库脚本
create data ......
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" & ......