一般处理程序
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using SSC2.DB; //详见如何生成LING数据访问,微软公司提供的新技术。查询操作可以通过编程语言自身来传达,而不是以字符串形式嵌入到应用程序代码中。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace SSC2.WebService
{
public class test1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
//context.Response.ContentType = "text/plain"; 结果就会按原样输出文本.
//context.Response.ContentType = "text/html"; 结果是正常的HTML格式输出.
context.Response.ContentType = "text/plain"; //将要加载的数据设置为纯文本的形式,浏览器在获取到这种文件时并不会对其进行处理。
using (var db = new InfoDataContext()) //事先要做一个LINQ数据访问,生成*.dbml文件,再导入。 例:using SSC2.DB;
{
string sql = "select * from outstanding";
//数据请求 <>内要填写数据库中的表名 ,否则会出现 “No matching records found”
var AssetListAll = db.ExecuteQuery<outstanding>(sql).ToList();//对<outstanding>数据库,执行sql查询,查询结果转成列表形式
//处理数据
var AssetList = AssetListAll.Skip(0).Take(10).ToList(); //从第1条数据开始,每页显示10条
var result = JsonConvert.SerializeObject(AssetList.ToArray()); //要导入 using Newtonsoft.Json
string s = "{\"rows\":" + result + ",\"total\":" + AssetListAll.Count + "}"; //转变成json需要的格式
JObject jo = (JObject)JsonConvert.DeserializeObject(s); //反序列到指定的类型 头部要导入:using Newtonsoft.Json.Linq;
//返回数据
context.Response.Write(jo);
}
}
//公共布尔值可重复使用
public bool IsReusable
{
get
{
return false;
}
}
}
}