.net + EF EasyUI 增删改查

.net + EF EasyUI 增删改查

博主在这里先讲下什么是EasyUI?

  • EasyUI是一组基于jQuery的UI插件集合体
  • EasyUI通过javascript代码快速实现功能
  • EasyUI可以帮助开发者快速打造出功能丰富并且美观的UI界面

数据库

**博主这里选择的是SQL Server 2016 功能与SQL Server的版本号无关(这里我做的是用户的单表不存在权限菜单逻辑):

Nametype
Uidvarchar(36)
Unamevarchar(50)
Upwdvarchar(20)
Ugenderint
UAddressvarchar(50)
Ustutevarchar(50)
IsDeletebit

在用EasyUI 之前需要下载jQuery EasyUI包

这里博主提供下,详[http://www.jeasyui.com/download/index.php][1].
下载好包后,打开vs 新建解决方案,新建项目,把下载的包粘贴到项目中。

前台代码块

前台页面需要引用包里的js 这里详[http://www.jeasyui.net/demo/331.html][1].

<body>
    <div style="margin:20px 0;"></div>
    <table id="dg" title="用户列表" class="easyui-datagrid" style="width:550px;height:250px"
           url="@Url.Action("GetData","Home")"
           toolbar="#toolbar"
           rownumbers="true" fitColumns="true" singleSelect="true" pagination="true">
        <thead>
            <tr>
                <th field="Uname" width="100">用户姓名</th>
                <th field="Upwd" width="100">密码</th>
                <th field="Ugender" width="100">性别</th>
                <th field="UAddress" width="250">住址</th>
                <th field="Ustute" width="60">状态</th>
            </tr>
        </thead>
    </table>
    <div id="toolbar">
        <a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newUser()">添加用户</a>
        <a href="#" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editUser()">编辑用户</a>
        <a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="destroyUser()">删除用户</a>
        <input id="productid" style="line-height:26px;border:1px solid #ccc" width="100">
        <a href="#" class="easyui-linkbutton" plain="true" onclick="doSearch()">查询</a>
    </div>
    <div id="dlg" class="easyui-dialog" style="width:400px;height:280px;padding:10px 20px"
         closed="true" buttons="#dlg-buttons">
        <div class="ftitle">用户信息</div>
        <form id="fm" method="post">
            <table cellpadding="5">

                <tr>
                    <td>用户名:</td>
                    <td><input class="easyui-textbox" type="text" name="Uname" /></td>
                    <td><input type="hidden" name="Uid" /></td>
                </tr>
                <tr>
                    <td>密码:</td>
                    <td><input class="easyui-textbox" type="text" name="Upwd" /></td>
                </tr>
                <tr>
                    <td>性别:</td>
                    <td>
                        <input type="radio" name="Ugender" value="1"><span></span>
                        <input type="radio" name="Ugender" value="2"><span></span>
                    </td>
                </tr>
                <tr>
                    <td>地址:</td>
                    <td><input class="easyui-textbox" name="UAddress" data-options="multiline:true" style="height:60px" /></td>
                </tr>
                <tr>
                    <td>状态:</td>
                    <td>
                        <select class="easyui-combobox" name="Ustute">
                            <option value="正常" selected>正常</option>
                            <option value="失效">失效</option>
                        </select>
                    </td>
                </tr>
            </table>
        </form>
    </div>
    <div id="dlg-buttons">
        <a href="#" class="easyui-linkbutton" iconCls="icon-ok" onclick="saveUser()">保存</a>
        <a href="#" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg').dialog('close')">取消</a>
    </div>
</body>

Javascript代码块

<script type="text/javascript">
    function newUser() {
        $('#dlg').dialog('open').dialog('setTitle', '新增用户信息');
        $('#fm').form('clear');
        url = '@Url.Action("SaveUser","Home")';
    }
    function doSearch() {
        $('#dg').datagrid('load', {
            username: $('#productid').val(),
        });

    }
    function editUser(){
        var row = $('#dg').datagrid('getSelected');
        if (row) {
            $('#dlg').dialog('open').dialog('setTitle', '编辑用户');
            $('#fm').form('load', row);
            url = '@Url.Action("SaveUser","Home")';
        }
    }
    function saveUser() {
        $('#fm').form('submit', {
            url: url,
            onSubmit: function () {
                return $(this).form('validate');
            },
            success: function (result) {
                var result = eval('(' + result + ')');
                if (result.msg=="保存成功。") {
                    alert(result.msg);
                    $('#dlg').dialog('close');     // 关闭弹框
                    $('#dg').datagrid('reload');   //重新加载数据
                } else {
                    $.messager.show({
                        title: 'Error',
                        msg: result.msg
                    });
                }
            }
        });
    }
    function destroyUser() {
        var row = $('#dg').datagrid('getSelected');
        if (row) {
            $.messager.confirm('Confirm', '确定要删除用户吗?', function (r) {
                if (r) {
                    $.post("@Url.Action("DeleteUser")", { userIds: row.Uid }, function (result) {
                        if (result.msg == "删除成功。") {
                            alert(result.msg)
                            $('#dg').datagrid('reload'); // 重新加载数据
                        } else {
                            $.messager.show({  // 展示错误信息
                                title: 'Error',
                                msg: result.errorMsg
                            });
                        }
                    }, 'json');
                }
            });
        }
    }
</script>

Controllers 层代码块

博主这里的context 是EF拉取的实例。

//这里是获取列表的方法 username 是前台页面查询传递的参数
public JsonResult GetData(string username)
        {
            if (!string.IsNullOrEmpty(username))
            {
                var dd = context.User_Info.Where(x =>            username.Contains(x.Uname) && !x.IsDelete).ToList();
                return Json(dd, JsonRequestBehavior.AllowGet);
            }
            else
            {
                var data = context.User_Info.Where(x => !x.IsDelete).ToList();
                return Json(data, JsonRequestBehavior.AllowGet);
            }
        }

添加方法:

//这里的model是实体
public ActionResult SaveUser(Models.Data.User_Info model)
        {
            try
            {
                var user = context.User_Info.FirstOrDefault(x => x.Uid == model.Uid);
                var exit = context.User_Info.Exists(x => x.Uname == model.Uname);
                if (user != null)
                {
                    //编辑
                    user.Uname = model.Uname;
                    user.Upwd = model.Upwd;
                    user.UAddress = model.UAddress;
                    user.Ugender = model.Ugender;
                    user.Ustute = model.Ustute;
                }
                else
                {
                    //添加
                    if (exit)
                    {
                        return new JsonResult() { Data = new { msg = "用户已存在,请重新编辑。" } };
                    }
                    else
                    {
                        user = model;
                        user.Uid = Guid.NewGuid().ToString();
                        context.User_Info.Add(user);
                    }
                }
                context.SaveChanges();
                return new JsonResult() { Data = new { msg = "保存成功。" } };
            }
            catch (Exception ex)
            {
                return new JsonResult() { Data = new { msg = ex.Message } };
            }

        }

删除方法:

//userIds 为前台传递的主键id
    public ActionResult DeleteUser(string userIds)
        {
            try
            {
                var users = context.User_Info.Where(x => userIds.Contains(x.Uid));
                if (users.Count() > 0)
                {
                    users.For(x =>
                    {
                        context.User_Info.Remove(x);
                    });
                }
                context.SaveChanges();
                return new JsonResult() { Data = new { msg = "删除成功。" } };
            }
            catch (Exception ex)
            {
                return new JsonResult() { Data = new { msg = ex.Message } };
            }
        }
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值