这里是我的一个简单的jquery+json的连库操作,只是一个简单查询,
//后台代码
<%@ WebHandler Language="C#" Class="show" %>
using System;
using System.Web;
using System.Collections.Generic;
using Model;
using DAL;
using System.Web.Script.Serialization;
public class show : IHttpHandler {
public void ProcessRequest (HttpContext context) {
JavaScriptSerializer serializer=new JavaScriptSerializer();
//调用后台方法
IList<test> tt = testservice.getalltest();
//序列化
string date= serializer.Serialize(tt);
context.Response.ContentType = "text/plain";
......
系统简单介绍:
很标准的配置:asp.net 2.0+SqlServer 2000 or 2005,一些统计图采用的是flash技术~刚毕业的时候在一家电子政务公司工作时开发的,这套系统强就强在它不是应用系统,而是一个工具,可以在此工具基础上,经过二次开发,衍生出满足政府部门信息化需求的应用系统!!
这是我第一份工作带给我最大的收获,不是编码,是这套系统的设计~使用这个工具,公司在开发每个项目的时候都只需要把精力放在不同政府部门的特定需求上,然后很迅速就可以将各种应用系统开发出来~法院 人力保障局 外经委等各种部门的办公, 信息管理,工作流等都可以满足!
我学习了这个工具的设计,狠狠地消化并吸收到自己大脑,目前我正在尝试将此设计用不同的技术实现出来~~嘎嘎!!
主要功能:
其实跟很多工具或系统的功能基本类似的,一般系统就这几部分:
(1)用户组和用户管理
定义了不同角色,特定角色有特定权限,用户属于某个组就具有了该组的权限。这在政府部门中很重要,大家都知道政府部门中行政级别化的相当专业哦~至少领导使用该系统让他看看汇总数据 ......
System.Drawing.Image imgPhoto = System.Drawing.Image.fromFile("图片路径名");
int sourceWidth = imgPhoto.Width; //图片宽度
int sourceHeight = imgPhoto.Height; //图片高度
控件名.PostedFile.ContentLength //获取空间大小返回 Integer 字节
......
当我们想要从网上下载文件时,通常的做法是在服务器上的某个目录下生成一个文件。
protected void DownloadFile(string filename)
{
string saveFileName = "test.xls";
int intStart = filename.LastIndexOf("\\") + 1;
saveFileName = filename.Substring(intStart, filename.Length - intStart);
Response.Clear();
Response.Charset = "utf-8";
Response.Buffer = true;
this.EnableViewState = false;
Response.ContentEncoding = System.Text.Encoding.UTF8;
Response.AppendHeader("Content-Disposition", "attachment;filename=" + saveFileName);
Response.WriteFile(filename);
Response.Flush();
Response.Close();
Response.End();
}
但会存在这样的情况,直接从数据库中下载图片。
其实原理很简单。就是用MemoryStream代替FileStream。有一点需要注意就是http头的格式要设置正确。 byte[] pic = //从数据库返回的图片
MemoryStream ms = new MemoryStream(pic);
System.Drawing.Image ......
今天TM群里有人问起关于页面传值的方法,又引发了一场讨论。看来这个还是有很多人关注的,因此我就我个人观点做了些总结,希望对大家有所帮助。
1. 使用QueryString变量
QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:
a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
string s_url;
s_url = "b.aspx?name=" + Label1.Text;
Response.Redirect(s_url);
}
b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
Label2.Text = Request.QueryString["name"];
}
2. 使用Application 对象变量
Application对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock。
a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
......
在面试的时候,经常会遇到这样的问题,其实我们会对其中的几种方法比较熟悉,因为项目中经常使用。但是要全面的回答ASP.NET中页面传值的方式,估计往往很难全面。
一.
使用QueryString变量
QueryString是一种非常简单也是使用比较多的一种传值方式,但是它将传递的值显示在浏览器的地址栏中,如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。
Response.Redirect( "target.aspx?param1=hello¶m2=hi ")
接收页面: string str =
Request.QueryString["param1"];
string str1
= Request.QueryString["param2];
二.使用Cookie对象变量(Cookie是存放在客户端的)
设置Cookie: HttpCookie cookie_name = new
HttpCook ......