Asp.Net+Oracle+ExtJs

                Asp.Net+Oracle+ExtJs简单的增删查改

正文:我觉得ExtJs相对其他Js框架比较难上手,一些api都是英文的,学习资源也相对可能少一些,这里根据我自己所学的东西做了一套的简单的增删查改,框架还是Oracle+Ado.Net.

首先还是一个empPage.html,总体的页面布局以及表格数据:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <link href="/Css/main.css" rel="stylesheet" type="text/css" />
    <link href="/Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="/Ext/adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="/Ext/ext-all.js"></script>
    <script type="text/javascript" src="/Ext/ext-lang-zh_CN.js"></script>

    <script type="text/javascript" src="/Js/Main.js"></script>
    <script type="text/javascript" src="/Js/GridMain.js"></script>
    <script type="text/javascript" src="Js/AddEmpInfo.js"></script>
    <script type="text/javascript" src="Js/DelEmpInfo.js"></script>
    <script type="text/javascript" src="Js/EditEmpInfo.js"></script>
</head>
<body>
    <form>
        <div>
        <div id="north" style=" background-image:url(/HotelUI/Images/main_top_BG.gif);width: 980px; height: 65px">
            <div id="myTime" style="width: 237px; height: 19px; float:right; left: -11px; position: relative; top: 41px; font-size: 12px; color: #ffffff; z-index: 101;">
            </div>
            <div id="UserName" style="width: 187px; height: 18px; float:right; left: 152px; position: relative; top: 21px; font-size: 12px; color: #ffffff; z-index: 102;">
            </div>
            <div id="logo" style="width: 464px;
                height: 61px; background-image: url(Images/aa.gif);">
            </div>
            </div>
        <div id="west" style="width: 190px; height: 400px; float:left">
            </div>
        <div id="center" style="width: 579px; height: 400px; float:left">
        </div>
        <div id="east" style="width: 160px; height: 400px; float:left">
        </div>
    </div>
        <div id="south" style="width: 980px; height: 105px; color:Red; margin:5px;font:normal 12px tahoma, arial, sans-serif, 宋体;" align="center">
        <a>Footer Infomation YZR</a>
        </div>
    </form>
</body>
</html>

Main.Js包含了整个页面布局的设计以及相应布局下的一些事件代码:

//页面主要布局
Ext.onReady
(
    function()
    {
        //实例化布局对象
        var view = new Ext.Viewport
        (
            {
                layout:‘border‘, //声明为border布局
                items:
                [
                    //头部    logo
                    new Ext.BoxComponent
                    (
                        {
                            region:‘north‘,
                            el: ‘north‘, //填充指定id的区域内容到north区域(页面会有一个div的id为north)
                            height:65
                        }
                    ),
                    //底部
                    new Ext.BoxComponent
                    (
                        {
                            region:‘south‘,
                            el: ‘south‘, //填充指定id的区域内容到south区域
                            height:20
                        }
                    ),
                    //中间,主要的表格数据,根据业务决定
                    {
                            region:‘center‘,
                            el:‘center‘,
                            height:405,
                            width:613,
                            title:‘EMP详细信息‘,
                            html:"<div id=‘grid‘></div>"//动态生成一个div
                    },
                    //左边,一般用来摆放菜单数据
                    {
                            region:‘west‘,
                            split:true,
                            margins:‘0 0 0 0‘,
                            layout:‘accordion‘,//一种布局形式,很多js框架都提供这种布局,类似qq
                            width:190,
                            el:‘west‘, //填充指定id的区域内容到west区域
                            collapsible:true,
                            title: ‘EMP管理菜单‘,
                            layoutConfig:
                            {
                                animate:true
                            },
                            items:
                            [
                                {
                                    title: ‘日常EMP管理‘,
                                    border:false,
                                    html:‘<div id="tree1" style="overflow:auto;width:100%;height:100%"></div>‘
                                },
                                {
                                    title: ‘EMP信息中心‘,
                                    border:false,
                                    html:‘<div id="tree2" style="overflow:auto;width:100%;height:100%"></div>‘
                                }
                            ]
                    },
                    //右边   比较少用
                    {
                            region:‘east‘,
                            width:160,
                            collapsible:true,
                            title: ‘EMP右部模块‘,
                            html:"<div id=‘moneyGrid‘></div>"
                    }
                ]
            }
        );
        //树形菜单      这边固定写死左边这颗树的数据,子节点和父节点是通过appendChild();实现的
       // ===================================
        var root = new Ext.tree.TreeNode
        (
            {
                id:‘root‘,
                text:‘树的根‘
            }
        );

        //第一个根节点
        var a = new Ext.tree.TreeNode
        (
            {
                id:‘a‘,
                icon:‘/ExtImg/Images/user3.gif‘,//图标文件
                text: ‘普通EMP日常管理‘,
                expanded:true //展开显示
            }
        ); 

        //创建第一个根节点的第一个子节点
        var a1 = new Ext.tree.TreeNode
        (
            {
                id:‘a1‘,
                icon: ‘/ExtImg/Images/write.gif‘,//图标文件
                text: ‘新增EMP信息‘,
                listeners:
                {
                    ‘click‘:function(){
                        AddEmpInfo();
                            }
                }
            }
        );

        //创建第一个根节点的第三个子节点
        var a2 = new Ext.tree.TreeNode
        (
            {
                id:‘a2‘,
                icon: ‘/ExtImg/Images/select.gif‘,//图标文件
                text: ‘删除EMP信息‘,
                listeners:
                {
                    ‘click‘: function (){
                        DelEmpInfo();
                    }
                }
            }
        );
        //创建第一个根节点的第三个子节点
        var a3 = new Ext.tree.TreeNode
        (
            {
                id: ‘a3‘,
                icon: ‘/ExtImg/Images/select.gif‘,//图标文件
                text: ‘编辑EMP信息‘,
                listeners:
                {
                    ‘click‘: function () {
                        EditEmpInfo();
                    }
                }
            }
        );

        //添加子节点到第一个根节点
        a.appendChild(a1);
        a.appendChild(a2);
        a.appendChild(a3);

        root.appendChild(a);
        var tree = new Ext.tree.TreePanel
        (
            {
                renderTo:"tree1",//页面id为tree1的div
                root:root, //对应的根节点
                animate:true, //动态显示
                enableDD:false, //支持拖放
                border:false,
                lines:true, //虚线
                rootVisible:false, //显示根节点
                containerScroll: true
            }
        );
    }
);

Main.Js

GridMain.Js是Emp表格数据的js代码:

//主界面的Grid
//获得输入的字符串
//var message = "";
//storeMain为数据来源
var storeMain=new Ext.data.Store
(
    {
        //表示从哪里获得数据
        proxy:new Ext.data.HttpProxy
        (
            {
                url:‘/Ajax/getEmpList.ashx‘
            }
        ),

        //解析Json
        reader: new Ext.data.JsonReader
        (
            {
                root: ‘data‘,
                //主键
                id: ‘JSON_empno‘,
                //表格显示字段列
                fields:
                [
                    ‘JSON_empno‘, ‘JSON_ename‘, ‘JSON_job‘, ‘JSON_sal‘, ‘JSON_mgr‘, ‘JSON_hiredate‘, ‘JSON_comm‘, ‘JSON_deptno‘
                ]
            }
        ),
        remoteSort:true
    }
);
var grid;
Ext.onReady
(
    function()
    {
        var colModel = new Ext.grid.ColumnModel
        (
            [
                { header: "empno", width: 100, dataIndex: ‘JSON_empno‘ },
                { header: "ename", width: 100, dataIndex: ‘JSON_ename‘ },
                { header: "job", width: 110, dataIndex: ‘JSON_job‘ },
                { header: "sal", width: 120, renderer: getColor, dataIndex: ‘JSON_sal‘ },
                { header: "mgr", width: 120, dataIndex: ‘JSON_mgr‘ },
                { header: "hiredate", width: 125, renderer: formatterdate, dataIndex: ‘JSON_hiredate‘ },
                { header: "comm", width: 120, dataIndex: ‘JSON_comm‘ },
                { header: "deptno", width: 120, dataIndex: ‘JSON_deptno‘ }
            ]
        );
        //设置金额颜色
        function getColor(val)
        {

            if (val != "")
            {
                var value = parseInt(val);
                if(value>2000){
                    return ‘<span style="color:red;">‘ + ‘$‘ + val + ‘</span>‘;
                }
                return ‘<span style="color:green;">‘+ ‘$‘ + val + ‘</span>‘;
            }
        }
        function formatterdate(val, row) {
            if (val != null) {
                var date = new Date(val);
                return date.getFullYear() + ‘-‘ + (date.getMonth() + 1) + ‘-‘
                + date.getDate();
            }
        }
        grid = new Ext.grid.GridPanel
        (
            {
                renderTo:‘grid‘,
                height:500,
                width:1005,
                cm:colModel, //行列
                store:storeMain, //数据源
                trackMouseOver:true, //鼠标特效
                loadMask: true,
                autoShow : true,
                autoScroll: true,
                //头部
                tbar:
                [
                    ‘empNo查询‘,
                    {xtype:‘textfield‘,width:170,id:‘title‘,name:‘title‘},
                    {text:‘搜索‘,iconCls:‘search‘,handler:SerachGrid},{xtype:‘tbseparator‘}
                ]
            }
        )
        //加载数据
        storeMain.load();
    }
);

function SerachGrid()
{
    var message = Ext.get(‘title‘).dom.value;
    storeMain.reload
    (
        {
            params:{msg:message}
        }
    )
}

GridMain.Js

左边为菜单栏,有三个子菜单分别演示用于对Emp表格数据的增删改:

//添加普通员工
function AddEmpInfo()
{
    Ext.QuickTips.init();
    Ext.form.Field.prototype.msgTarget = ‘side‘;
    //编写一个作为window窗体 的item
    var addUser = new Ext.FormPanel
    (
        {
            labelWidth:75,
            frame : true,
            title : ‘请仔细填写表单‘,
            width : 300,
            waitMsgTarget : true,
            items:
            [
                {
                    xtype:‘textfield‘,
                    fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Empno‘,
                    labelStyle: ‘width:80px‘,
                    width:150,
                    name: ‘Empno‘,
                    allowBlank:false,
                    blankText: ‘请输入Empno‘
                    //validator:CheckUserId,//指定验证的方法
                    //invalidText:‘用户名已存在!‘
                },
                    {
                        xtype: ‘textfield‘,
                        fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Ename‘,
                        labelStyle: ‘width:80px‘,
                        width: 150,
                        name: ‘Ename‘,
                        allowBlank: false,
                        blankText: ‘请输入Ename‘
                        //validator:CheckUserId,//指定验证的方法
                        //invalidText:‘用户名已存在!‘
                    },
                        {
                            xtype: ‘textfield‘,
                            fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Job‘,
                            labelStyle: ‘width:80px‘,
                            width: 150,
                            name: ‘Job‘,
                            allowBlank: false,
                            blankText: ‘请输入Job‘
                        },
                            {
                                xtype: ‘textfield‘,
                                fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Mgr‘,
                                labelStyle: ‘width:80px‘,
                                width: 150,
                                name: ‘Mgr‘,
                                allowBlank: false,
                                blankText: ‘请输入Mgr‘
                            },
                {
                    xtype:‘textfield‘,
                    fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Hiredate‘,
                    labelStyle: ‘width:80px‘,
                    width:150,
                    name: ‘Hiredate‘,
                    allowBlank:false,
                    blankText: ‘请输入Hiredate‘
                },
                 {
                     xtype: ‘textfield‘,
                     fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Sal‘,
                     labelStyle: ‘width:80px‘,
                     width: 150,
                     name: ‘Sal‘,
                     allowBlank: false,
                     blankText: ‘请输入Sal‘
                 },
                  {
                      xtype: ‘textfield‘,
                      fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Comm‘,
                      labelStyle: ‘width:80px‘,
                      width: 150,
                      name: ‘Comm‘,
                      allowBlank: false,
                      blankText: ‘请输入Comm‘
                  },
                {
                    xtype:‘textfield‘,
                    fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Deptno‘,
                    labelStyle: ‘width:80px‘,
                    width:150,
                    name: ‘Deptno‘,
                    allowBlank:false,
                    blankText: ‘请输入Deptno‘
                }
            ],
            buttons:
            [
                {
                    id:‘btnOk‘,
                    text:‘确  定‘,
                    handler:function()
                    {
                        //如果验证合法
                        if (addUser.form.isValid())
                        {
                            //弹出效果
                            Ext.MessageBox.show
                            (
                                {
                                    msg: ‘正在保存,请稍等...‘,
                                    progressText: ‘Saving...‘,
                                    width:300,
                                    wait:true,
                                    waitConfig: {interval:200},
                                    icon:‘download‘,
                                    animEl: ‘saving‘
                                }
                            );
                            setTimeout(function(){}, 10000);
                            //提交到服务器
                            addUser.form.submit
                            (
                                {
                                    url:‘/Ajax/addEmpInfo.ashx‘,  //提交的页面路径
                                    method:‘post‘,//提交方式为post
                                    //提交成功的回调函数
                                    success:function(form,action)
                                    {
                                        var flage = action.result.success;
                                        //如果服务器端传过来的数据为true则表示登录成功
                                        if (flage == true)
                                        {
                                            Ext.MessageBox.alert(‘恭喜‘,‘添加员工成功!‘);
                                            newWin.hide();
                                        }
                                    },
                                    //提交失败的回调函数
                                    failure:function()
                                    {
                                        Ext.Msg.alert(‘错误‘,‘服务器出现错误请稍后再试!‘);
                                    }
                                }
                            );
                        }
                    }

                },
                {
                    text:‘取  消‘,
                    handler:function()
                            {
                                newWin.hide();
                            }
                }
            ]
        }
    );
    //定义窗体
    newWin = new Ext.Window
    (
        {
            layout:‘fit‘,
            width:350,
            height:350,
            collapsible:true, //允许缩放条
            closeAction : ‘hide‘,
            plain : true,
            modal: ‘true‘, //启用遮罩
            title : ‘添加EMP员工‘,
            items : addUser
        }
    );
    //显示窗体
    newWin.show();
}
//Ajax验证是否已存在EmpNo
//var isok=false;
//function CheckUserId()
//{
//    var UserId = Ext.get(‘LoginName‘).dom.value;
//    //ajax提交
//    Ext.Ajax.request
//    (
//        {
//            url:‘/HotelUI/Form/CheckUserId.aspx‘,
//            params:{name:UserId},
//            success: function(response, options)
//            {
//
//                var check = Ext.util.JSON.decode(response.responseText);
//                if(check.success == true)  //已被注册
//                {
//                    SetValue(false);
//                }
//                else
//                {
//                    SetValue(true);
//                }
//            }
//        }
//    );
//    //给变量赋值
//    function SetValue(b)
//    {
//        isok = b;
//    }
//    return isok;
//}

AddEmpInfo

function DelEmpInfo() {
    var selected = grid.getSelectionModel().getSelections();
    if (selected != null) {
        var ids = "";
        Ext.each(selected, function () {
            var id = this.get(‘JSON_empno‘);
            ids = ids + id + ",";
        })
        ids = ids.substring(0, ids.length - 1);
        //Ext.Msg.alert(‘提示‘, ids);
        Ext.MessageBox.confirm("提示", "是否要删除", function (yes) {
            if (yes == ‘yes‘) {
                //Ext.Msg.alert(‘提示‘, ids);
                //$.post("", { "action": "del", id: ids }, function (data) {
                //    Ext.Msg.alert(‘提示‘, data);

                //});
                Ext.Ajax.request({
                    url: ‘/Ajax/delEmpInfo.ashx‘,
                    params: { "action": "del", ids: ids },
                    method: ‘POST‘,
                    success: function (response, options) {
                        Ext.MessageBox.alert(‘删除成功‘, response.responseText);
                        storeMain.reload();
                    },
                    failure: function (response, options) {
                        Ext.MessageBox.alert(‘删除失败‘, ‘请求超时或网络故障,错误编号:‘ + response.status);
                    }
                });
            }
        })
    } else {
        Ext.Msg.alert(‘提示‘, ‘您还没有选中一行数,请选中在删除!‘);
    }
}

DelEmpInfo

function EditEmpInfo() {
    var selected = grid.getSelectionModel().getSelections();
    if (selected != null) {
        var id = "";
        Ext.each(selected, function () {
            id = this.get(‘JSON_empno‘);
        })
        Ext.QuickTips.init();
        Ext.form.Field.prototype.msgTarget = ‘side‘;
        var reader = new Ext.data.JsonReader({}, [
            { name: ‘Empno‘, type: ‘string‘ },
             { name: ‘Ename‘, type: ‘string‘ },
              { name: ‘Job‘, type: ‘string‘ },
               { name: ‘Mgr‘, type: ‘int‘ },
                { name: ‘Hiredate‘, type: ‘string‘, dateFormat: ‘Y-m-d H:i:s‘ },
                 { name: ‘Sal‘, type: ‘float‘ },
                  { name: ‘Comm‘, type: ‘float‘ },
                   { name: ‘Deptno‘, type: ‘int‘ }
        ]);
        var updateEmp = new Ext.FormPanel({
            labelAlign: ‘right‘,
            title: ‘编辑Emp‘,
            labelWidth: 50,
            frame: true,
            url: ‘/Ajax/EditEmpInfo.ashx‘,
            width: 280,
            reader: reader,
            items: [
                  {
                      layout: ‘column‘,
                      border: false,
                      items:
                      [
                          {
                              columnWidth: .5,
                              layout: ‘form‘,
                              border: false,
                              items:
                              [
                                  {
                                      xtype: ‘textfield‘,
                                      fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Empno‘,
                                      labelStyle: ‘width:100px‘,
                                      width: 80,
                                      name: ‘Empno‘,
                                      allowBlank: false,
                                      blankText: ‘请输入Empno‘,
                                      hidden: true,
                                      hideLabel: true,
                                  },
                                  {
                                      xtype: ‘textfield‘,
                                      fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Ename‘,
                                      labelStyle: ‘width:100px‘,
                                      width: 80,
                                      name: ‘Ename‘,
                                      allowBlank: false,
                                      blankText: ‘请输入Ename‘
                                  }
                              ]
                          },
                          {
                              columnWidth: .5,
                              layout: ‘form‘,
                              border: false,
                              items:
                              [
                                   {
                                       xtype: ‘textfield‘,
                                       fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Job‘,
                                       labelStyle: ‘width:100px‘,
                                       width: 80,
                                       name: ‘Job‘,
                                       allowBlank: false,
                                       blankText: ‘请输入Job‘
                                   },
                                  {
                                      xtype: ‘textfield‘,
                                      fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Mgr‘,
                                      labelStyle: ‘width:100px‘,
                                      width: 80,
                                      name: ‘Mgr‘,
                                      allowBlank: false,
                                      blankText: ‘请输入Mgr‘
                                  }
                              ]
                          }
                      ]
                  },
                            {
                                xtype: ‘textfield‘,
                                fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Hiredate‘,
                                labelStyle: ‘width:100px‘,
                                width: 150,
                                name: ‘Hiredate‘,
                                allowBlank: false,
                                blankText: ‘请输入Hiredate‘
                            },
                                 {
                                     xtype: ‘textfield‘,
                                     fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Sal‘,
                                     labelStyle: ‘width:100px‘,
                                     width: 80,
                                     name: ‘Sal‘,
                                     allowBlank: false,
                                     blankText: ‘请输入Sal‘
                                 },
                                      {
                                          xtype: ‘textfield‘,
                                          fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Comm‘,
                                          labelStyle: ‘width:100px‘,
                                          width: 80,
                                          name: ‘Comm‘,
                                          allowBlank: false,
                                          blankText: ‘请输入Comm‘
                                      },
                                         {
                                             xtype: ‘textfield‘,
                                             fieldLabel: ‘&nbsp;&nbsp;&nbsp;&nbsp;Deptno‘,
                                             labelStyle: ‘width:100px‘,
                                             width: 80,
                                             name: ‘Deptno‘,
                                             allowBlank: false,
                                             blankText: ‘请输入Deptno‘
                                         }
            ],
            buttons: [{
                text: ‘提交‘,
                handler: function () {
                    //如果验证合法
                    if (updateEmp.form.isValid()) {
                        //弹出效果
                        Ext.MessageBox.show
                        (
                            {
                                msg: ‘正在保存,请稍等...‘,
                                progressText: ‘Saving...‘,
                                width: 300,
                                wait: true,
                                waitConfig: { interval: 200 },
                                icon: ‘download‘,
                                animEl: ‘saving‘
                            }
                        );
                        setTimeout(function () { }, 10000);
                        //提交到服务器
                        updateEmp.form.submit
                        (
                            {
                                url: ‘/Ajax/EditEmpInfo.ashx‘,  //提交的页面路径
                                method: ‘post‘,//提交方式为post
                                //提交成功的回调函数
                                success: function (form, action) {
                                    var flage = action.result.success;
                                    //如果服务器端传过来的数据为true则表示登录成功
                                    if (flage == true) {
                                        Ext.MessageBox.alert(‘恭喜‘, ‘修改成功!‘);
                                        newWin.hide();
                                    }
                                },
                                //提交失败的回调函数
                                failure: function () {
                                    Ext.Msg.alert(‘错误‘, ‘服务器出现错误请稍后再试!‘);
                                }
                            }
                        );
                    }
                }
            }]
        });
        updateEmp.getForm().load({ url: ‘/Ajax/getEmpInfoById.ashx‘, method: ‘get‘, params: { empno: id } });
        //定义窗体
        newWin = new Ext.Window
        (
            {
                layout: ‘fit‘,
                width: 540,
                height: 350,
                collapsible: true, //允许缩放条
                closeAction: ‘hide‘,
                closable: true,
                plain: true,
                modal: ‘true‘,
                title: ‘编辑Emp信息‘,
                items: updateEmp
            }
        )
        //显示窗体
        newWin.show();
        //Ext.Ajax.request({
        //    url: ‘/Ajax/delEmpInfo.ashx‘,
        //    params: { "action": "del", ids: ids },
        //    method: ‘POST‘,
        //    success: function (response, options) {
        //        Ext.MessageBox.alert(‘删除成功‘, response.responseText);
        //        storeMain.reload();
        //    },
        //    failure: function (response, options) {
        //        Ext.MessageBox.alert(‘删除失败‘, ‘请求超时或网络故障,错误编号:‘ + response.status);
        //    }
        //});

    } else {
        Ext.Msg.alert(‘提示‘, ‘您还没有选中一行数,请选中在编辑!‘);
    }
}
function formatterdate(val, row) {
    if (val != null) {
        var date = new Date(val);
        return date.getFullYear() + ‘-‘ + (date.getMonth() + 1) + ‘-‘
        + date.getDate();
    }
}

EditEmpInfo

相应在后端我写了相应的一般处理程序处理增删查改的逻辑:和之前的EasyUI的操作改动不大,这里就贴上pageEmpList.ashx

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace myOracle.UI.Ajax
{
    using myOracle.Bll;
    using System.Data;
    using myOracle.Utility;
    /// <summary>
    /// by  YZR
    /// </summary>
    public class getEmpList : IHttpHandler
    {
        EmpBll bll = new EmpBll();
        public void ProcessRequest(HttpContext context)
        {
            string pageSize = "20";
            string pageIndex = "1";
            DataTable dt =null;
            int totalCount =0;
            string JsonStr=string.Empty;
            if ( context.Request.Form["msg"] != null)
            {
                string empno = context.Request.Form["msg"];
                dt = DbHelper.GetDataTableFromIDataReader(bll.GetDataReaderByPage(" empno=‘" + empno+"‘", int.Parse(pageSize), int.Parse(pageIndex)));
                 totalCount = bll.GetCount(" empno="+empno);
                 JsonStr = JSonHelper.CreateJsonParameters(dt, true, totalCount, "data");
            }
            else
            {
                dt= DbHelper.GetDataTableFromIDataReader(bll.GetDataReaderByPage("", int.Parse(pageSize), int.Parse(pageIndex)));
                totalCount = bll.GetCount(null);
                JsonStr = JSonHelper.CreateJsonParameters(dt, true, totalCount, "data");

            }
            context.Response.Write(JsonStr);

        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

pageEmpList

本文可用于一起学习!

END

时间: 2024-10-13 00:34:20

Asp.Net+Oracle+ExtJs的相关文章

Asp.Net+Oracle+EasyUI简单增删查改

Asp.Net+Oracle+EasyUI简单增删查改 概要:网上有很多关于EasyUI前端框架的资料,本人在学习的基础上,基于自己之前搭建的框架(Oracle+Ado.Net),配合EasyUI实现一套简单的增删查改. 正文: 在实体层新建一个EMP.cs,继承至BaseModel 1 namespace myOracle.Model 2 { 3 public class Emp:BaseModel 4 { 5 public Emp() 6 { 7 base.PrimaryKey = "emp

Asp.Net+Oracle+BootStrap+Jquery

                   Asp.Net+Oracle+BootStrap+Jquery实现简单的增删查改 概要:相信有了解过BootStrap的朋友都知道,BootStrap这家伙很强大,尽管你不是学做美工的,你都会爱上它.我这边通过一些学习写了一套前端基于BootStrap+Jquery,后端是Oracle+Ado.Net的一套简单的增删查改.我们可以一起学习. 正文,义不容辞首先来张主页面,整体的的页面布局: index.html,BootStrap可以去网上下载: <!DOC

经历:asp.net oracle 部署问题以及解决方法

原文:[原创]经历:asp.net oracle 部署问题以及解决方法 精简的美丽...... 一.环境    开发环境        win7 64bit         Vs2010        Oracle 11g r2 64bit        <instantclient-basic-win32-11.2.0.1.0>            部署环境        winServer 2008 r2 64bit        Oracle 11g r2 64bit        &

Asp.net MVC4 ExtJS权限管理系统源码 C#开发框架源码

开发环境:VS2010或以上 数据库:SQL Server 2008 r2 MVC版本:Asp.net mvc 4.0 ExtJs版本:ext-4.2 功能介绍 1.多标签,js动态加载模式,全ajax操作,让基于extjs的应用不再那么慢 2.数据表格列头可自由拖动并记录拖动后的位置 3.新的neptune主题 4.使用Elmah异常记录组件,可直接在后台查看异常记录,方便维护人员定位异常 5.虽然是全ajax操作,但是仍然可以操作浏览器的前进后退功能 需要源码请加QQ:798743532

[转]asp+oracle分页

PageSize:每页显示的记录数.PageCount:根据用户设定好的PageSize和表中的总记录数,系统自动算出总页数.RecordCount:表中的总记录数.AbsolutePage:表示当前页码.如将AbsolutePage属性设为3,则当前记录移至第3页第1条(也就是第31条).  知道Recordset具有这几个属性后,相信大家都觉得实现记录的分页显示是很简单的.先打开数据库及表,再设定好PageSize和AbsolutePage,最后将记录数据输出到浏览器,就可以大功告成.诚然,

asp.net oracle 存储过程

ORACLE代码 CREATE OR REPLACE PROCEDURE gd_CURSOR(MYCS1 OUT SYS_REFCURSOR,MYCS2 OUT SYS_REFCURSOR,a out varchar)as BEGIN a:='test'; OPEN MYCS1 FOR SELECT 1 from dual; OPEN MYCS2 FOR SELECT 2 from dual; END; C#代码 /// <summary> /// 执行oracle存储过程返回多个结果集 //

asp数据库编程:在ASP中使用Oracle数据库

Oracle是世界上用得最多的数据库之一,活动服务器网页(ASP)是一种被广泛用于创建动态网页的功能强大的服务器端脚本语言.许多ASP开发人员一直在考虑,能否在开发互联网应用.电子商务网站.互联网管理系统时结合使用ASP和Oracle数据库?这个问题的答案是肯定的,我们还可以使用VB访问Oracle数据库.在本篇文章中,我们将主要讨论如何使用ASP来处理Oracle数据库中数据的方法. 在开始讨论这个问题前,我们需要了解几个背景知识,Oracle Objects for OLE就是其中之一.Or

Oracle+Ado.Net(一)

以前曾经用过Oracle+ExtJS进行项目开发,可能接触的很少,感觉和Sqlserver数据库大同小异, 就我自己而言,很多项目一般基于Ado.Net+Sqlserver2008 R2这一套(用过的Entity FrameWork实体框架(ORM)底层也是基于Ado.Net去访问数据库). 现在我自己写一个用Ado.Net访问Oracle数据库的一点点代码(还不完整,以后会补全基本的常用操作功能),我自己的思路是从简单三层一点点往抽象模式进行编写 首先定义的UserInfo是从oracle数据

【翻译自mos文章】访问Oracle Database的知名的Data Providers for .NET

适用于: Oracle Data Provider for .NET - Version 9.2.0.8 and later Oracle Providers for ASP.NET - Version 11.1.0.6 and later Microsoft Windows Itanium (64-bit) Microsoft Windows (32-bit) Microsoft Windows x64 (64-bit) ***Checked for relevance on 29-Jan-2