MVC及List泛型集合案例之用户管理系统

一、MVC简介:

MVC是一种设计模式,是一种代码开发的思想和套路

将要实现的功能分成三个部分:

M:(Model)模型层   主要对数据进行操作。

V:(View)视图层    主要负责和用户进行输入输出的交互。

C:(Controller)交互层  主要负责该功能的逻辑部分。

以网站的登录界面为例进行说明:

登录界面(V)<-------->登录,注册(C)<-------->数据库相关操作(M).

二、使用LIst集合对数据进行增删改查

定义User实体类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UserManagementSystenm
{
    /// <summary>
    /// 实体类
    /// </summary>
    class User
    {
        private string name;
        private int age;
        private string address;
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
        public int Age
        {
            get { return age; }
            set { age = value; }
        }
        public string Address
        {
            get { return address; }
            set { address = value; }
        }
        public User(string name,int age,string address) {
            this.name = name;
            this.age = age;
            this.address = address;
        }
        public override string ToString()
        {
            return string.Format("{0}|{1}|{2}",name,age,address);
        }

    }
}

UserControll(用户控制类)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UserManagementSystenm
{
    /// <summary>
    /// C(Controll)控制器层---用于处理逻辑
    /// </summary>
    class UserController
    {
        //实例化一个User集合
        List<User> userList = new List<User>();
        /// <summary>
        /// 添加数据
        /// </summary>        
        public void AddItem(User user)
        {
            userList.Add(user);
        }
        //修改数据
        /// <summary>
        /// 修改第i个数据的名字
        /// </summary>
        public void AlterByName(string name,int num) {
            userList[num].Name = name;
        }
        /// <summary>
        /// 修改第i个数据的年龄
        /// </summary>
        public void AlterByAge(int age, int num)
        {
            userList[num].Age = age;
        }
        /// <summary>
        /// 修改第i个数据的地址
        /// </summary>
        public void AlterByAddress(string address, int num)
        {
            userList[num].Address = address;
        }
        //删除数据
        /// <summary>
        /// 通过名字删除
        /// </summary>
        public void RemoveByName(string name)
        {
            for (int i = 0; i < userList.Count; i++)
            {
                if (userList[i].Name==name) {
                    userList.Remove(userList[i]);
                }
            }
        }
        /// <summary>
        /// 通过地址删除
        /// </summary>
        public void RemoveByAddress(string address)
        {
            for (int i = 0; i < userList.Count; i++)
            {
                if (userList[i].Address == address)
                {
                    userList.Remove(userList[i]);
                }
            }
        }
        //查询数据
        public void ShowAll() {
            if (userList.Count== 0)
            {
                Console.WriteLine("还未添加数据");
            }
            for (int i = 0; i < userList.Count; i++)
            {
                Console.WriteLine(i+1+":"+userList[i]);
            }
        }
    }
}

Program(视图层)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace UserManagementSystenm
{
    /// <summary>
    /// V(View)视图层----和用户进行交互
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("----------------------");
            Console.WriteLine("------用户管理系统----");
            Console.WriteLine("----------------------");

            UserController uc = new UserController();
            //  
            while (true) { 
            Console.WriteLine("输入你要进行的操作:1.添加,2.修改3.删除4.查询");
            //接收用户输入的信息
            string command= Console.ReadLine();
            //对用户输入的命令进行判断
            switch (command)
            {
                case "1":
                    Console.WriteLine("输入名字");
                    string name = Console.ReadLine();
                    Console.WriteLine("输入年龄");
                    int age =int.Parse(Console.ReadLine());
                    Console.WriteLine("输入地址");
                    string address = Console.ReadLine();

                    uc.AddItem(new User(name,age,address));
                    break;
                case "2":
                        uc.ShowAll();
                        Console.WriteLine("请输入要修改第几个数据");
                        int num = int.Parse(Console.ReadLine())-1;
                        Console.WriteLine("输入修改的属性1.名字2.年龄3.地址");
                        string AlterConn = Console.ReadLine();
                        if (AlterConn == "1")
                        {
                            Console.WriteLine("输入修改后的名字");
                            string AlterName = Console.ReadLine();
                            uc.AlterByName(AlterName,num);
                        }
                        else if (AlterConn == "2")
                        {
                            Console.WriteLine("输入修改后的年龄");
                            int AlterAge = int.Parse(Console.ReadLine());
                            uc.AlterByAge(AlterAge,num);
                        }
                        else if (AlterConn == "3")
                        {
                            Console.WriteLine("输入修改后的地址");
                            string AlterAddress = Console.ReadLine();
                            uc.AlterByAddress(AlterAddress, num);
                        }
                        else
                        {
                            Console.WriteLine("请输入指定命令符");
                        }

                        break;
                case "3":
                        Console.WriteLine("输入按什么类型来修改1.名字2.地址");
                        string DeletConn = Console.ReadLine();
                        if (DeletConn == "1")
                        {
                            Console.WriteLine("输入要删除的名字");
                            string DeletName = Console.ReadLine();
                            uc.RemoveByName(DeletName);
                        } else if (DeletConn == "2") {
                            Console.WriteLine("输入要删除的地址");
                            string DeletAddress = Console.ReadLine();
                            uc.RemoveByAddress(DeletAddress);
                        } else {
                            Console.WriteLine("请输入指定命令符");
                        }
                    break;
                case "4":
                    uc.ShowAll();
                    break;
                default:
                    Console.WriteLine("请输入指定命令符");
                    break;
            }
          }
            
        }
    }
}

猜你喜欢

转载自blog.csdn.net/dnll_/article/details/81194152