easyui webapi
今天算是踩雷了。。。。
先说一下,由于项目需要,我目前开发PO模块,
由于需要提供手机端,所以我在mvc项目中创建了 webapi。提供手机端调用。
然后我就考虑,easyui也使用webapi来提取数据。
好来,那么问题来了。。。。
我给大家看一下问题:
html--webapi
$('#tt').datagrid({
width: 'auto',
height: 300,
striped: true,
singleSelect: true,
method: 'Get',
url: 'Test/Get',
loadMsg: '数据加载……',
pagination: true,
rownumbers: true,
columns: [[
{ field: 'PT_Name', title: 'PT_Name', align: 'center', width: 180 },
{ field: 'PT_CreateTime', title: 'PT_CreateTime', align: 'center', width: 180 }
]]
});
返回的数据:
"{"total": 1,"rows":[{"PT_ID":1,"PT_ParentID":0,"PT_Name":"鞋子","PT_Code":"Shoes","CompanyInfo_ID":null,"PT_CreateTime":null},{"PT_ID":2,"PT_ParentID":0,"PT_Name":"dfaz","PT_Code":"asfaf","CompanyInfo_ID":null,"PT_CreateTime":null}]}"
在看看html--ashx
$('#tt').datagrid({
width: 'auto',
height: 300,
striped: true,
singleSelect: true,
method: 'Get',
url: '/Ashx/Handler1.ashx',
loadMsg: '数据加载……',
pagination: true,
rownumbers: true,
columns: [[
{ field: 'PT_Name', title: 'PT_Name', align: 'center', width: 180 },
{ field: 'PT_CreateTime', title: 'PT_CreateTime', align: 'center', width: 180 }
]]
});
返回的数据:
{"total": 1,"rows":[{"PT_ID":1,"PT_ParentID":0,"PT_Name":"鞋子","PT_Code":"Shoes","CompanyInfo_ID":null,"PT_CreateTime":null},{"PT_ID":2,"PT_ParentID":0,"PT_Name":"dfaz","PT_Code":"asfaf","CompanyInfo_ID":null,"PT_CreateTime":null}]}
public HttpResponseMessage Get()
{
string a = "{\"total\": 1,\"rows\":[{\"PT_ID\":1,\"PT_ParentID\":0,\"PT_Name\":\"鞋子\",\"PT_Code\":\"Shoes\",\"CompanyInfo_ID\":null,\"PT_CreateTime\":null},{\"PT_ID\":2,\"PT_ParentID\":0,\"PT_Name\":\"dfaz\",\"PT_Code\":\"asfaf\",\"CompanyInfo_ID\":null,\"PT_CreateTime\":null}]}";
var resp = new HttpResponseMessage { Content = new StringContent(a, System.Text.Encoding.UTF8, "application/json") };
return resp;
}
2 使用对象返回
public Rootobject Get()
{
Rootobject resp=new Rootobject();
//省略赋值
return resp;
}
public class Rootobject
{
public int total { get; set; }
public List<Row> rows = new List<Row>();
}
public class Row
{
public int PT_ID { get; set; }
public int PT_ParentID { get; set; }
public string PT_Name { get; set; }
public string PT_Code { get; set; }
public object CompanyInfo_ID { get; set; }
public object PT_CreateTime { get; set; }
}
没有想到这么坑爹。。。。哎。记录一下,给大伙提个醒
ashx和 webapi都是
返回
string a = "{\"total\": 1,\"rows\":[{\"PT_ID\":1,\"PT_ParentID\":0,\"PT_Name\":\"鞋子\",\"PT_Code\":\"Shoes\",\"CompanyInfo_ID\":null,\"PT_CreateTime\":null},{\"PT_ID\":2,\"PT_ParentID\":0,\"PT_Name\":\"dfaz\",\"PT_Code\":\"asfaf\",\"CompanyInfo_ID\":null,\"PT_CreateTime\":null}]}";
也是研究不够深入,哎。后来才想起来。。。
不同的是,ashx其实通过HttpResponse返回,而webapi则直接返回 string
easyui webapi的更多相关文章
- 我的权限系统设计实现MVC4 + WebAPI + EasyUI + Knockout(一)
一.前言 之前的博客一直都还没写到框架的实现及权限系统,今天开始写我的权限系统,我以前做过的项目基本上都有权限管理这个模块,但各个系统都会有一些不太一样,有些简单点,有些稍微复杂一点,一句话,我们做的 ...
- 建筑材料系统 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发
框架介绍: 1.基于 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发 2.采用MVC的框架模式,具有耦合性低.重用性高.生命周期成本低.可维护性 ...
- 我的权限系统设计实现MVC4 + WebAPI + EasyUI + Knockout(四)授权代码维护
一.前言 权限系统设计中,授权代码是用来控制数据访问权限的.授权代码说白了只是一树型结构的数据,没有什么其它的业务意义.那么这个页面的功能也就非常简单授权代码维护:新增.修改.删除授权代码数据. 二. ...
- 我的权限系统设计实现MVC4 + WebAPI + EasyUI + Knockout(三)图形化机构树
一.前言 组织机构是国内管理系统中很重要的一个概念,以前我们基本都是采用数据列表的形式展现,最多只是采用树形列表展现.虽然够用,但是如果能做成图形化当然是最好不过了.这里我不用任何图形控件,就用最原始 ...
- 我的权限系统设计实现MVC4 + WebAPI + EasyUI + Knockout(二)菜单导航
一.前言 上篇博客中已经总体的说了一下权限系统的思路和表结构设计,那接下来我们就要进入正文了,先从菜单导航这个功能开始. 二.实现 这个页面基本不用什么需求分析了,大家都很明白,不过在这个页面要多维护 ...
- MVC4 + WebAPI + EasyUI + Knockout-授权代码维护
我的权限系统设计实现MVC4 + WebAPI + EasyUI + Knockout(四)授权代码维护 一.前言 权限系统设计中,授权代码是用来控制数据访问权限的.授权代码说白了只是一树型结构的数据 ...
- 权限系统设计实现MVC4 + WebAPI + EasyUI + Knouckout
权限系统设计实现MVC4 + WebAPI + EasyUI + Knouckout (一) 一.前言 之前的博客一直都还没写到框架的实现及权限系统,今天开始写我的权限系统,我以前做过的项目基本上都有 ...
- ASP.NET MVC4.0+ WebAPI+EasyUI+KnockOutJS快速开发框架 通用权限管理系统
1.基于 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发 2.采用MVC的框架模式,具有耦合性低.重用性高.生命周期成本低.可维护性高.有利软件 ...
- 跨域WebApi的Jquery EasyUI的数据交互
目录 1 大概思路... 1 2 创建WebAPI 1 3 创建CrossMainController并编写... 1 4 Nuget安装microso ...
随机推荐
- Javascript 对象复制
如果对象只是一个数据集,可采用json化再反json化的方式克隆一个对象,这个过程会丢失对象的方法.效率比较低. 可以采用如下递归的方式复制一个对象. function clone(target) { ...
- python init 方法 与 sql语句当前时间对比
def init(self,cr): tools.sql.drop_view_if_exists(cr, 'custrom_product_infomation_report') cr.execute ...
- [转]The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
完整错误信息: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS"AS IS" AND ANY ...
- DELL升级bios方式
升级过程其实很简单 1.官网下载exe文件,放入U盘 2.重启电脑F12选择升级bios 3.选择U盘里面的升级文件 4.重点来了!!! boot options 是什么? 就是boot设置里面自己自 ...
- run `npm audit fix` to fix them, or `npm audit` for details
问题 added 246 packages from 681 contributors and audited 382 packages in 17.509s found 13 vulnerabili ...
- ML.NET 示例:二元分类之用户评论的情绪分析
写在前面 准备近期将微软的machinelearning-samples翻译成中文,水平有限,如有错漏,请大家多多指正. 如果有朋友对此感兴趣,可以加入我:https://github.com/fei ...
- for循环两个略骚的写法
骚写法 或许你知道,总之我觉得很酷,希望你也这么认为. 递增遍历 最常见场景,从 0 到 10 的遍历,不输出 10: for(let i = -1; ++i < 10;) { console. ...
- 【转】Git版本控制软件从入门到精通学习手册
GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...
- Object-Oriented(一)创建对象
自用备忘笔记 前言 虽然可以使用 Object 和对象字面量创建对象,但是如果要创建大量相似的对象又显得麻烦.为解决这个问题,人们开始使用工厂模式的变种. 工厂模式 function person(n ...
- 插件GsonFormat快速生成JSon实体类
IntelliJ IDEA 个人觉得是目前最好最强最智能的Java IDE,默认已经集成了几乎所有主流的开发工具和框架. 1.常用工具支持Java日常开发需要接触到很多常用的工具,为了便于使用,很多工 ...