这一节讲一下如何添加用户名和密码到已建的sqlite.db数据库中。

当在datagrid的toolbar中输入用户名、密码,然后点击添加按钮时,将该用户加入数据库,并显示出来。datagrid表格里显示的内容不再是之前写在MessController里面存放的json内容,而是数据库内容。通过新建一个UserManager.Business.UserDB users,获取users.GetAllList();将users里的内容转为Json格式,再显示出来即可。

1. 在UserManager.Common中新建JsonHelper.cs文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft.Json; namespace UserManager.Common
{
public static class JsonHelper
{
public static string ToJson(object obj)
{
return JsonConvert.SerializeObject(obj);
}
}
}

记得下载并添加引用Newtonsoft.Json.dll

2. 在Scripts文件夹中新建UserEvent.js文件,里面写入添加点击事件AddUser():

function AddUser() {
var name = $("#name").val();
var pwd = $("#pwd").val(); //前台逻辑判断
if (name == '' || pwd == '') {
$.messager.alert('Warning', '用户名或密码为空');
}
//后台逻辑判断
else {
$.post("/Account/UserAdd", { name: name, pwd: pwd },
function (data) {
if (data == "0") {
$.messager.alert('Warning', '添加失败');
}
else {
$.messager.alert('Warning', '添加成功');
$('#dg').datagrid('reload');
}
});
}
}

3. 在Account控制器中添加UserAdd()函数:

public ActionResult UserAdd()
{
string name = Request.Form["name"];
string pwd = Request.Form["pwd"];
int res = ;
UserManager.Model.UserDB user = new Model.UserDB();
user.Name = name;
user.Pwd = pwd;
user.AddTime = DateTime.Now.ToString();
res = users.Add(user); return Content(res.ToString());
}

因为要将添加的内容显示在datagrid中,将UserEvent.aspx文件中class="easyui-datagrid"的url改为:url:'/Account/UserLoad'

并在Account控制器中添加UserLoad()函数:

public ActionResult UserLoad()
{
string res = string.Empty;
System.Data.DataSet ds = users.GetAllList();
res = UserManager.Common.JsonHelper.ToJson(ds.Tables[]);
return Content(res);
}

此时,在不分页的datagrid页面中已经可以正常显示了。

若是datagrid添加了分页属性,需要修改动软生成的代码函数,因为没有相对应的代码。

注销后可以使用数据库中新添加的用户密码进行登录:

主页的当前登录人也随之改变。

asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(七)—— 添加用户到数据库-obj转json的更多相关文章

  1. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅—— 摘要

    首次接触asp.net开发,希望把自己的学习之旅写下来,一方面做个知识归纳技术总结,另一方面开放到博客中,和大家一起交流学习! asp.net是目前流行的web开发技术之一,是微软旗下开发的基于.ne ...

  2. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(二)—— easyui的简单实用

    下面开始在UserManager.Web中利用easyUI构建web. 1. 先删除自带的controllers.models和views(里面的shared和web.config可以保存)下面的文件 ...

  3. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(四)—— session传递登录人信息显示+用户注销

    前面的学习,已经做好了简单的登录和主页,涉及了三层软件架构,mvc,easyui的layout.tree.tab.window,sqlite,动软代码自动生成. 下面完善一下登录跳转主页后,在sout ...

  4. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(三)—— 简单登录页面+sqlite+动软代码生成器的使用

    上一节讲到利用easyui的layout.tree.tab和datagrid创建用户管理的页面,注意利用到easyui的页面一定要按顺序添加jQuery和easyUI的.js和.css样式,灵活查看e ...

  5. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(六)—— 简单过滤器的使用

    有些同学喜欢在测试或运行项目时,直接跳转页面到Home/Index下,但本次项目直接输入Home/Index则会报错 因为home/index中有个user.name参数,如果启动项目后直接跳转到ho ...

  6. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(一)—— 手把手教你创建第一个三层架构+mvc的asp.net项目

    下面开启项目 1. 打开vs2010-文件-新建项目 2. 先创建一个空的解决方案: 选择其他项目类型-visual studio 解决方案-空白解决方案(默认.NET Framework 4),项目 ...

  7. asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(五)—— 解决tabs选择已建tab显示但datagrid的toolbar消失的问题

    项目需要反复运行,调整bug.发现在选择已有选项卡时,虽然不需要再新建tab,直接跳转到已有的tab上,但问题是显示的datagrid有事会出现toolbar消失的问题.网上也有不少同学出现类似问题, ...

  8. ASP.NET MVC+EasyUI+Entity FrameWork 整合开发

    本文详细讲解怎么用ASP.NET MVC+EasyUI+Entity FrameWork 来开发一个项目 对于ASP.NET MVC的Jscript库,主要引用 <script type=.mi ...

  9. ASP.NET MVC +EasyUI 权限设计(二)环境搭建

    请注明转载地址:http://www.cnblogs.com/arhat 今天突然发现博客园出问题了,老魏使用了PC,手机,平板都访问博客园了,都是不能正常的访问,原因是不能加载CSS,也就是不能访问 ...

随机推荐

  1. Codeforces 1023 D.Array Restoration-RMQ(ST)区间查询最值 (Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Fi)

    D. Array Restoration 这题想一下就会发现是只要两个相同的数之间没有比它小的就可以,就是保存一下数第一次出现和最后一次出现的位置,然后查询一下这个区间就可以,如果有0的话就进行填充. ...

  2. 使用Xshell上传下载文件

    很多时候我们需要在Windows跟Linux之间,或者Linux跟Linux之间传文件,这里我们讲的是使用Xshell实现文件上传下载. 一.使用rz,sz实现Windows,linux上传下载 1. ...

  3. 洛谷——P2958 [USACO09OCT]木瓜的丛林Papaya Jungle

    P2958 [USACO09OCT]木瓜的丛林Papaya Jungle 题目描述 Bessie has wandered off the farm into the adjoining farmer ...

  4. 转 IntelliJ IDEA 快捷键

    https://www.cnblogs.com/clwydjgs/p/9390488.html 一.视图查看 Ctrl+F12 查看file,method结构图.类继承机构图 (不知道方法结构,Ctr ...

  5. Spring Struts里用到的设计模式

    Bean工厂的Factory模式 AOP的Proxy模式

  6. 【拓扑排序】【堆】CH Round #57 - Story of the OI Class 查错

    拓扑排序,要让字典序最小,所以把栈改成堆. #include<cstdio> #include<queue> #include<algorithm> using n ...

  7. Interaction triggers in WPF

    Interaction Class - static class that owns the Triggers and Behaviors attached properties. Handles p ...

  8. 【sql】mysql数据库做两条数据替换的操作,不使用第三方变量

    需求: 1.将数据库中两条数据中的唯一约束列  做值的替换 原始思想: 将两条数据查出来,在程序中设置第三方变量,进行两条数据的替换,然后将原始两条数据删除,将新的两条替换后的数据插入. 新思想: 1 ...

  9. 直接拿来用!最火的Android开源项目(二)

    在<直接拿来用!最火的Android开源项目(一)>中,我们详细地介绍了GitHub上最受欢迎的TOP20 Android开源项目,引起了许多读者的热议,作为开发者,你最常用的是哪些开源项 ...

  10. supervisord的环境变量的设置

    在python中引用jar包,使用java的功能,需要使用三方包:pyjnius from jnius import autoclass 需要java环境,因此需要设置JAVA_HOME环境变量. 但 ...