在.NET MVC中增删改查并将字符串转json存入数据库后进行分类统计

本文介绍如何在ASP.NET MVC框架下进行CRUD操作,将字符串转换为JSON存储到数据库,并实现分类统计。涉及新建控制器、服务、工具类以及前后端交互的详细步骤。
摘要由CSDN通过智能技术生成

目录

1、新建一个类

2、新建一个controller

3、新建两个service

4、加入两个工具类 

5、开始写页面

5.1主页的列表

5.1.1后端

5.1.2前端

5.2删除活动

5.2.1后端

5.2.2前端

5.3添加活动

5.3.1后端

5.3.2前端

5.4修改活动

5.4.1后端

5.4.2前端

5.5查询物品,根据班级汇总,共几件物品。

5.5.1后端

5.5.2前端


以下内容纯属个人理解,如有错误请指出,一起学习。

1、新建一个类

和数据库字段一样,actId主键自增其他正常。

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


public class Activity
{
    public int actId { get; set; }
    public int userId { get; set; }
    public int classId { get; set; }
    public string tourItem { get; set; }
    public string role { get; set; }
}

 还有物品类要转json存在tourItem里,不需要表。

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

public class Belongs
{
    public Belongs()
    {

    }
    public Belongs(string btype, string bnum)
    {
        this.btype = btype;
        this.bnum = bnum;
    }
    public string btype { get; set; }
    public string bnum { get; set; }
}

2、新建一个controller

3、新建两个service

 listservice写的是几个不需要参数的获取所有列表的方法。比如年级班级之类。

4、加入两个工具类 

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


/// <summary>
/// Summary description for DBHelper
/// </summary>
public class DBHelper
{
    public static string conString = "server=.;database=数据库名;uid=sa;pwd=你的sa密码;";

    public static DataSet getds(string sql)
    {

        using (SqlConnection con = new SqlConnection(conString))
        {
            SqlCommand cmd = new SqlCommand(sql, con);
            using (SqlDataAdapter da = new SqlDataAdapter(cmd))
            {
                DataSet ds = new DataSet();
                try
                {
                    da.Fill(ds);
                    return ds;
                }
                catch
                {
                    throw;
                }
            }
        }

    }

    public static DataSet Query(string sql, params SqlParameter[] cmdParms)
    {
        using (SqlConnection connection = new SqlConnection(conString))
        {
            SqlCommand cmd = new SqlCommand(sql, connection);
            cmd.Parameters.AddRange(cmdParms);

            using (SqlDataAdapter da = new SqlDataAdapter(cmd))
            {
                DataSet ds = new DataSet();
                try
                {
                    da.Fill(ds, "ds");
                    return ds;
                }
                catch
                {
                    // log
                    throw;
                }
            }
        }
    }

    public static DataTable getdt(string sql)
    {
        using (SqlConnection con = new SqlConnection(conString))
        {
            SqlCommand cmd = new SqlCommand(sql, con);
            using (SqlDataAdapter da = new SqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                try
                {
                    da.Fill(dt);
                    return dt;
                }
                catch
                {
                    throw;
                }
            }
        }
    }

    public static bool savesql(string sql)
    {
        bool ifsuccess = false;
        using (SqlConnection con = new SqlConnection(conString))
        {
            SqlCommand cmd = new SqlCommand(sql, con);
            try
            {
                con.Open();
                cmd.ExecuteNonQuery();
                con.Close();
            }
            catch
            {
                throw;
            }
            return ifsuccess;
        }

    }

    public static int Execute(string sql, params SqlParameter[] cmdParms)
    {
        using (SqlConnection connection = new SqlConnection(conString))
        {
            using (SqlCommand cmd = new SqlCommand(sql, connection))
            {
                connection.Open();
                cmd.Parameters.AddRange(cmdParms);
                var result = cmd.ExecuteNonQuery();
                return result;
            }
        }
    }




}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Newtonsoft.Json;
using System.IO;

/// <summary>
/// Json帮助类
/// </summary>
public class JsonHelper
{
    /// <summary>
    /// 将对象序列化为JSON格式
    /// </summary>
    /// <param name="o">对象</param>
    /// <returns>json字符串</returns>
    public static string SerializeObject(object o)
    {
        string json = JsonConvert.SerializeObject(o);
        return json;
    }

    /// <summary>
    /// 解析JSON字符串生成对象实体
    /// </summary>
    /// <typeparam name="T">对象类型</typeparam>
    /// <param name="json">json字符串(eg.{"ID":"112","Name":"石子儿"})</param>
    /// <returns>对象实体</returns>
    public static T DeserializeJsonToObject<T>(string json) where T : class
    {
        JsonSerializer serializer = new JsonSerializer();
        StringReader sr = new StringReader(json);
        object o = serializer.Deserialize(new JsonTextReader(sr), typeof(T));
        T t = o as T;
        return t;
    }

    /// <summary>
    /// 解析JSON数组生成对象实体集合
    /// </summary>
    /// <typeparam name="T">对象类型</typeparam>
    /// <param name="json">json数组字符串(eg.[{"ID":"112","Name":"石子儿"}])</param>
    /// <returns>对象实体集合</returns>
    public static List<T> DeserializeJsonToList<T>(string json) where T : class
    {
        JsonSerializer serializer = new JsonSerializer();
        StringReader sr = new StringReader(json);
        object o = serializer.Deserialize(new JsonTextReader(sr), typeof(List<T>));
        List<T> list = o as List<T>;
        return list;
    }

    /// <summary>
    /// 反序列化JSON到给定的匿名对象.
    /// </summary>
    /// <typeparam name="T">匿名对象类型</typeparam>
    /// <param name="json">json字符串</param>
    /// <param name="anonymousTypeObject">匿名对象</param>
    /// <returns>匿名对象</returns>
    public static T DeserializeAnonymousType<T>(string json, T anonymousTypeObject)
    {
        T t = JsonConvert.DeserializeAnonymousType(json, anonymousTypeObject);
        return t;
    }
}

5、开始写页面

5.1主页的列表

5.1.1后端

先写service,连接数据库并查询所有活动

新建一个ListService类,写入方法

    //获取所有活动
 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值