这一节讲一下如何添加用户名和密码到已建的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. 实例教程:1小时学会Python(转)

    1 序言 面向读者 本文适合有经验的程序员尽快进入Python2.x世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的Python程序. Pyt ...

  2. 让你的apache支持ipv6

    如果你使用的linux系统已经获取到了ipv6地址,你就可以让你的apache htpd 等也支持ipv6. 1.检查linux监听的端口,如果有:::port ,而且获取到了ipv6地址,则可以确定 ...

  3. (寒假GYM开黑)2018-2019 ACM-ICPC Brazil Subregional Programming Contest

    layout: post title: 2018-2019 ACM-ICPC Brazil Subregional Programming Contest author: "luowenta ...

  4. 浅析module.exports和exports区别和使用

    module.exports和exports 写node的时候,特别是自定义模块的时候,都是一顿乱敲,然后module.exports={}完事. 但有时候去看别人写的代码的时候会发现还可以expor ...

  5. FFT&NTT&多项式相关

    打了FFT 感觉以后多项式不虚了 ~滑稽~ PS 关于详见没写完.... code #include<cmath> #include<cstdio> #include<c ...

  6. [九省联考2018]林克卡特树(DP+wqs二分)

    对于k=0和k=1的点,可以直接求树的直径. 然后对于60分,有一个重要的转化:就是求在树中找出k+1条点不相交的链后的最大连续边权和. 这个DP就好.$O(nk^2)$ 然后我们完全不可以想到,将b ...

  7. [BZOJ 3571] 画框

    Link: BZOJ 3571 传送门 Solution: 和 BZOJ2395 的建模完全相同,(BZOJ2395 题解传送门) 仅仅是将其中的基础问题由最小生成树改成了二分图最大完美匹配 只要将原 ...

  8. URAL 1349 Farm

    Discription Here is a farm. Here is a farmer that counts how many animal live in his farm: a camels, ...

  9. [Contest20180116]随机游走

    题意:给一棵树,多次询问$a$到$b$期望步数,每一步都是随机的 对期望DP了解更深入了一些 先预处理$up_x$表示从$x$走到$fa_x$的期望步数 可以直接往上走,也可以先去儿子再回来,设$x$ ...

  10. 【线段树】Gym - 100507C - Zhenya moves from parents

    线段树每个结点维护两个值,分别是这个区间的 负债 和 余钱. 按时间顺序从前往后看的时候,显然负债是单调不减的. 按时间顺序从后往前看的时候,显然余钱也是单调不减的,因为之前如果有余钱,可能会增加现在 ...