vs2017 + miniUI + dapper 添加、修改、删除、查询操作

A、数据库表引用先前建立的company 公司信息表。

B、建立文件:

views 》 Home 》 Company.cshtml**(新建文件)** ,代码如下(直接复制即可)

@{

    Layout = Layout = "~/Views/Shared/_Layout.cshtml"; ;

}

<div style="width:100%;">

    <div class="mini-toolbar" style="border-bottom:0;padding:0px;">

        <table style="width:100%;">

            <tr>

                <td style="width:100%;">

                    <a class="mini-button" iconCls="icon-add" onclick="add()">添加</a>

                </td>

                <td style="white-space:nowrap;">

                    <input id="key" name="key" class="mini-textbox" emptyText="请输入姓名" style="width:150px;"   />

                    <a class="mini-button" onclick="search()">查询</a>

                </td>

            </tr>

        </table>

    </div>

</div> <div id="datagrid1" class="mini-datagrid" style="width:100%;height:280px;" allowResize="true" pageSize="10"

     url="/Home/CompanyList" idField="id" multiSelect="true" pagesize="20" showpager="true">

    <div property="columns">

        <!--<div type="indexcolumn"></div>        -->

        <div type="checkcolumn"></div>

        <div field="CompanyName" width="120" headerAlign="center" allowSort="true">公司名称</div>

        <div field="Address" width="120" headerAlign="center" allowSort="true">地址</div>

        <div field="mobile" width="120" headerAlign="center" allowSort="true">电话</div>

        <div name="action" width="100" renderer="onGenderRenderer" headerAlign="center">操作</div>

    </div>

</div> <script>     mini.parse();     var grid = mini.get("datagrid1");     grid.load();     grid.on("drawcell", function (e) {         var record = e.record,             column = e.column,             field = e.field,             value = e.value;         //action列,超连接操作按钮         if (column.name == "action") {             e.cellStyle = "text-align:center";             e.cellHtml = '<a   class="mini-button" style="width:60px;"   href="javascript:edit(\\'' + record.id + '\\')">修改</a>&nbsp; '                 + '<a   class="mini-button" style="width:60px;"  href="javascript:del(\\'' + record.id + '\\')" >删除</a>'         }     });     function search() {         var key = mini.get("key").value;         grid.load({ key: key });     }     $("#key").bind("keydown", function (e) {         if (e.keyCode == 13) {             search();         }     });     function del(rowid) {         if (rowid.length > 0) {             if (confirm("确定删除选中记录?")) {                 grid.loading("操作中,请稍后......");                 $.ajax({                     url: "/Home/Delete?id=" + rowid,                     type: "post",                     success: function (text) {                         grid.reload();                     },                     error: function () {                     }                 });             }         } else {             alert("请选中一条记录");         }     }     //添加、修改     function edit(rowid) {         mini.open({             targetWindow: window,             url: "/Home/CompanyEdit?Id=" + rowid,             title: "设置条件", width: 800, height: 600,             onload: function () {                 var iframe = this.getIFrameEl();                 var data = { action: "new" };                 iframe.contentWindow.OpenContext = { parent: window, popwin: this };             },             ondestroy: function (action) {                 loading();                 grid.reload();             }         });     }     //新建     function add() {         mini.open({             targetWindow: window,             url: "/Home/CompanyEdit",             title: "添加菜单", width: 700, height: 300,             onload: function () {                 var iframe = this.getIFrameEl();                 var data = { action: "new" };                 loading();                 iframe.contentWindow.OpenContext = { parent: window, popwin: this };             },             ondestroy: function (action) {                 grid.reload();             }         });     }     function loading() {         mini.mask({             el: document.body,             cls: 'mini-mask-loading',             html: '加载中...'         });         setTimeout(function () {             mini.unmask(document.body);         }, 1000);     } </script>

views 》 Home 》CompanyEdit.cshtml**(新建文件)** ,代码如下(直接复制即可)

@model MiniUi_Dapper.Controllers.Company

@{

    ViewBag.Title = "CompanyEdit";

    Layout = "~/Views/Shared/_Layout.cshtml";

}

<form id="form1" method="post">

    <div class="mini-fit'">

        <input name="Id" id="Id" class="mini-hidden" value="@Model.id" />

        <table border="0" cellpadding="2" cellspacing="0" class="EditTable" style="width: 100%">

            <tr>

                <td class="tdLabel" style="width: 30%;"> 公司名称:</td>

                <td class="tdText" style="width: 70%;"><input  class="mini-textbox" id="CompanyName" name="CompanyName" style="width: 200px;" value="@Model.CompanyName"></td>

            </tr>

            <tr>

                <td class="tdLabel" style="width: 30%;">  地址: </td>

                <td class="tdText" style="width: 70%;"> <input   class="mini-textbox" id="Address" name="Address" style="width: 200px;" value="@Model.Address">  </td>

            </tr>

            <tr>

                <td class="tdLabel" style="width: 30%;">  电话: </td>

                <td class="tdText" style="width: 70%;"> <input   class="mini-textbox" id="mobile" name="mobile" style="width: 200px;" value="@Model.mobile">  </td>

            </tr>

        </table>

        <div style="text-align:center;padding:10px;">

            <a class="mini-button" onclick="onOk" style="width:60px;margin-right:20px;">确定</a>

            <a class="mini-button" onclick="onCancel" style="width:60px;">取消</a>

        </div>

    </div>

</form> <script type="text/javascript">     mini.parse();     var form = new mini.Form("form1");     function SaveData() {         var form = new mini.Form("#form1");         var data = form.getData();      //获取表单多个控件的数据         //var json = mini.encode(data);   //序列化成JSON         $.ajax({             url: "/Home/CompanySave",             type: "post",             data: data,             success: function (text) {                 //alert("提交成功,返回结果:" + text);                 //grid.reload();                 CloseWindow("提交成功");             }         });     }     function GetData() {         var o = form.getData();         return o;     }     function CloseWindow(action) {         if (action == "close" && form.isChanged()) {             if (confirm("数据被修改了,是否先保存?")) {                 return false;             }         }         if (window.CloseOwnerWindow) return window.CloseOwnerWindow(action);         else window.close();     }     function onOk(e) {         SaveData();     }     function onCancel(e) {         CloseWindow("cancel");     } </script>

Controllers**》HomeController.cs****(控制器新建方法)** ,代码如下(直接复制即可)

#region  公司管理

/// <summary>

///

/// </summary>

/// <param name="pageIndex"></param>

/// <param name="pageSize"></param>

/// <param name="key">查询关键字,当前匹配公司名称</param>

/// <returns></returns>

[HttpPost]

public ActionResult CompanyList(int? pageIndex, int? pageSize,string key)

{

    using (var conn = new MySqlConnection(ConnectionString))

    {

         pageIndex = pageIndex ?? 0;

         pageSize = pageSize ?? 10;

         string query = "";

         if (key != null && key.Trim() != "")

             query = "select * from Company" + " where CompanyName like '%"+ key +"%'";

         else

             query = "select * from Company";

         var result = conn.Query<Company>(query).ToList();

         var total = result.Count();

         var list = result

         .OrderByDescending(d => d.id).Skip((pageIndex * pageSize).Value)

         .Take((pageSize).Value).Select(d => new

         {

             d.id,

             d.CompanyName,

             d.Address,

             d.mobile,

             d.link,

             d.intodate

         }).ToList();

         return Json(new { total = total, data = list }, JsonRequestBehavior.AllowGet);

    }

}

[HttpGet]

[Display(Description = "加载公司信息")]

public ActionResult CompanyEdit(int? id)

{

    //点击编辑页面,如果id=0 则是增加操作,如果id>0则是修改操作。

    using (var conn = new MySqlConnection(ConnectionString))

    {

         Company n;

         if ((id ?? 0) == 0)

             n = new Company();

         else

         {

             n = conn.Query<Company>("select * from company where id=" + id).FirstOrDefault();

             if (n == null)

                   return View("无公司信息");

         }

         return View(n);

    }

}

[HttpPost]

[Display(Description = "保存公司信息")]

public ActionResult CompanySave(Company company)

{

    try

    {

         using (var conn = new MySqlConnection(ConnectionString))

         {

             if (company.id == 0)

             {

                   var query = " INSERT INTO `company`(`CompanyName`, `Address`, `mobile`, `link`) VALUES (@CompanyName, @Address, @mobile, @link) ;";

                   var result = conn.Query<Company>(query,company).FirstOrDefault();

                   return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

             }

             else

             {

                   var query = "UPDATE  `company` SET `CompanyName` = @CompanyName, `Address` = @Address, `mobile` = @mobile, `link` = @link WHERE `id` = "+ company.id + ";";

                   var result = conn.Query<Company>(query, company).FirstOrDefault();

                   if (result == null)

                       return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

                   else

                       return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

             }

         }

    }

    catch (Exception ex)

    {

         return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

    }

    return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

}

/// <summary>

/// 根据表主键Id进行删除

/// </summary>

/// <param name="id"></param>

/// <returns></returns>

public ActionResult Delete(int id)

{

    using (var conn = new MySqlConnection(ConnectionString))

    {

         conn.Execute("delete from company where id=" + id);

         return Json(new { @return = 1 }, JsonRequestBehavior.AllowGet);

    }

}

#endregion

修改左菜单导航的json文件

到此完成数据库的增删改查操作。运行一下看看结果。

可加qq群索要源码或交流:547765059

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )