.NET使用EF和MVC三层架构实现通讯录(包含源码,SQL Server数据库)

.NET使用EF和MVC三层架构实现通讯录(包含源码,SQL Server数据库)

通讯录源码链接


提示:数据库可以根据图片列名自己创建


前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、数据库创建

根据图片内容列名可自己创建
User
在这里插入图片描述
Group在这里插入图片描述
Contact

在这里插入图片描述

二、创建Model

1.在Model新建项

操作如下(示例):

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、Controllers的创建

代码如下(示例):

LoginController

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using 通讯录.Models;

namespace 通讯录.Controllers
{
    public class LoginController : Controller
    {
        Models.DBAddressBookEntities db = new Models.DBAddressBookEntities();
        // GET: Login
        public ActionResult Login()
        {
            return View();
        }
        [HttpPost]
        public ActionResult Login(string username, string password)
        {
            int n = db.Users.Where(u => u.UserName == username && u.PassWord == password).Count();
            if (n == 1)
            {
                var user = db.Users.Where(u => u.UserName == username).SingleOrDefault();
                Session["userid"] = user.Id;//将用户名放入session中
                return Redirect("/contact/index");
            }
            Response.Write("<script>alert('用户名或密码错误')</script>");
            return View();
        }
    }
}

UserController

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using 通讯录.Models;

namespace 通讯录.Controllers
{
    public class UserController : Controller
    {
        Models.DBAddressBookEntities db = new Models.DBAddressBookEntities();
        // GET: User
        //用户列表
        public ActionResult Index()
        {
            List<User> userlist = db.Users.OrderBy(u => u.Id).ToList();
            return View(userlist);
        }
        //添加用户页面显示
        [HttpGet]
        public ActionResult Add()
        {
            List<SelectListItem> lstrole = new List<SelectListItem>();
            lstrole.Add(new SelectListItem { Text = "--请选择角色--", Value = "0" });
            lstrole.Add(new SelectListItem { Text = "普通用户", Value = "普通用户" });
            lstrole.Add(new SelectListItem { Text = "管理员", Value = "管理员" });
            ViewBag.lstrole = lstrole;
            return View();
        }
        [HttpPost]
        //添加用户
        public ActionResult Add(string username, string password, string role)
        {
            User model = new User();
            model.UserName = username;
            model.PassWord = password;
            model.Role = role;      
            db.Users.Add(model);
            db.SaveChanges();
            return Redirect("/user/index");
        }
        //删除用户
        public ActionResult Delete(int Id)
        {           
            db.Users.Remove(db.Users.Find(Id));
            int n = db.SaveChanges();
            return Redirect("/user/index");
        }
        //用户修改页面显示
        [HttpGet]
        public ActionResult Edit(int Id)
        {
            User olduser = db.Users.Find(Id);
            List<SelectListItem> lstrole = new List<SelectListItem>();
            lstrole.Add(new SelectListItem { Text = "--请选择角色--", Value = "0" });
            lstrole.Add(new SelectListItem { Text = "普通用户", Value = "普通用户" });
            lstrole.Add(new SelectListItem { Text = "管理员", Value = "管理员" });
            ViewBag.lstrole = lstrole;
            return View(olduser);
        }
        //保存用户提交的修改信息
        public ActionResult Edit(User user)
        {
            if (ModelState.IsValid)
            {
                User olduser = db.Users.Find(user.Id);
                olduser.UserName = user.UserName;
                olduser.PassWord = user.PassWord;
                olduser.Role = user.Role;
                int n = db.SaveChanges();
                if (n > 0)
                {
                    return Redirect("/user/index");
                }
            }
            return View(user);
        }
    }
}

GroupController

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using 通讯录.Models;

namespace 通讯录.Controllers
{
    public class GroupController : Controller
    {
        Models.DBAddressBookEntities db = new Models.DBAddressBookEntities();
        // GET: Group
        //显示分组列表
        public ActionResult Index()
        {
            List<Group> grouplist = db.Groups.OrderBy(u => u.Id).ToList();
            return View(grouplist);
        }
        //添加分组页面显示
        [HttpGet]
        public ActionResult Add()
        {
            return View();
        }
        [HttpPost]
        //添加分组
        public ActionResult Add(string groupid, string groupname, string remarks)
        {
            Group model = new Group();
            model.GroupId = groupid;
            model.GroupName = groupname;
            model.Remarks = remarks;
            db.Groups.Add(model);
            db.SaveChanges();
            return Redirect("/group/index");
        }
        //删除分组
        public ActionResult Delete(int Id)
        {
            db.Groups.Remove(db.Groups.Find(Id));
            int n = db.SaveChanges();
            return Redirect("/group/index");
        }
        //分组修改页面显示
        [HttpGet]
        public ActionResult Edit(int Id)
        {
            Group oldgroup = db.Groups.Find(Id);
            return View(oldgroup);
        }
        //保存用户提交的修改信息
        public ActionResult Edit(Group group)
        {
            if (ModelState.IsValid)
            {
                Group oldgroup = db.Groups.Find(group.Id);
                oldgroup.GroupId = group.GroupId;
                oldgroup.GroupName = group.GroupName;
                oldgroup.Remarks = group.Remarks;
                int n = db.SaveChanges();
                if (n > 0)
                {
                    return Redirect("/group/index");
                }
            }
            return View(group);
        }
    }
}

ContactController

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.WebPages;
using 通讯录.Models;

namespace 通讯录.Controllers
{
    public class ContactController : Controller
    {
        Models.DBAddressBookEntities db = new Models.DBAddressBookEntities();
        // GET: Contact
        public ActionResult Index()
        {
            List<Contact> contactlist = db.Contacts.OrderBy(u => u.Id).ToList();
            return View(contactlist);
        }
        //添加联系人页面显示
        [HttpGet]
        public ActionResult Add()
        {
            List<SelectListItem> lsgender = new List<SelectListItem>();
            lsgender.Add(new SelectListItem { Text = "--请选择性别--", Value = "0" });
            lsgender.Add(new SelectListItem { Text = "男", Value = "男" });
            lsgender.Add(new SelectListItem { Text = "女", Value = "女" });
            ViewBag.lsgender = lsgender;
            List<SelectListItem> lstgroupId = new List<SelectListItem>();
            List<Group> groupId = db.Groups.OrderBy(t => t.Id).ToList();
            lstgroupId.Add(new SelectListItem() { Text = "--请选择分组编号--", Value = "0" });
            for (int i = 0; i < groupId.Count; i++)
            {
                lstgroupId.Add(new SelectListItem() { Text = groupId[i].GroupId, Value = groupId[i].GroupId.ToString() });
            }
            ViewBag.lstgroupId = lstgroupId;
            return View();
        }
        [HttpPost]
        //添加联系人
        public ActionResult Add(Contact contact)
        {
            List<SelectListItem> lsgender = new List<SelectListItem>();
            lsgender.Add(new SelectListItem { Text = "--请选择性别--", Value = "0" });
            lsgender.Add(new SelectListItem { Text = "男", Value = "男" });
            lsgender.Add(new SelectListItem { Text = "女", Value = "女" });
            ViewBag.lsgender = lsgender;
            List<SelectListItem> lstgroupId = new List<SelectListItem>();
            List<Group> groupId = db.Groups.OrderBy(t => t.Id).ToList();
            lstgroupId.Add(new SelectListItem() { Text = "--请选择分组编号--", Value = "0" });
            for (int i = 0; i < groupId.Count; i++)
            {
                lstgroupId.Add(new SelectListItem() { Text = groupId[i].GroupId, Value = groupId[i].GroupId.ToString() });
            }
            ViewBag.lstgroupId = lstgroupId;
            Contact model = new Contact();
            db.Contacts.Add(contact);
            db.SaveChanges();
            return Redirect("/contact/index");
        }
        //删除分组
        public ActionResult Delete(int Id)
        {
            db.Contacts.Remove(db.Contacts.Find(Id));
            int n = db.SaveChanges();
            return Redirect("/contact/index");
        }
        //分组修改页面显示
        [HttpGet]
        public ActionResult Edit(int Id)
        {
            Contact oldContact = db.Contacts.Find(Id);
            List<SelectListItem> lsgender = new List<SelectListItem>();
            lsgender.Add(new SelectListItem { Text = "--请选择性别--", Value = "0" });
            lsgender.Add(new SelectListItem { Text = "男", Value = "男" });
            lsgender.Add(new SelectListItem { Text = "女", Value = "女" });
            ViewBag.lsgender = lsgender;
            List<SelectListItem> lstgroupId = new List<SelectListItem>();
            List<Group> groupId = db.Groups.OrderBy(t => t.Id).ToList();
            lstgroupId.Add(new SelectListItem() { Text = "--请选择分组编号--", Value = "0" });
            for (int i = 0; i < groupId.Count; i++)
            {
                lstgroupId.Add(new SelectListItem() { Text = groupId[i].GroupId, Value = groupId[i].GroupId.ToString() });
            }
            ViewBag.lstgroupId = lstgroupId;
            return View(oldContact);
        }
        //保存用户提交的修改信息
        public ActionResult Edit(Contact contact)
        {
            List<SelectListItem> lsgender = new List<SelectListItem>();
            lsgender.Add(new SelectListItem { Text = "--请选择性别--", Value = "0" });
            lsgender.Add(new SelectListItem { Text = "男", Value = "男" });
            lsgender.Add(new SelectListItem { Text = "女", Value = "女" });
            ViewBag.lsgender = lsgender;
            List<SelectListItem> lstgroupId = new List<SelectListItem>();
            List<Group> groupId = db.Groups.OrderBy(t => t.Id).ToList();
            lstgroupId.Add(new SelectListItem() { Text = "--请选择分组编号--", Value = "0" });
            for (int i = 0; i < groupId.Count; i++)
            {
                lstgroupId.Add(new SelectListItem() { Text = groupId[i].GroupId, Value = groupId[i].GroupId.ToString() });
            }
            ViewBag.lstgroupId = lstgroupId;           
            Contact oldcontact = db.Contacts.Find(contact.Id);
            oldcontact.Name = contact.Name;
            oldcontact.Gender = contact.Gender;
            oldcontact.Birthday = contact.Birthday;
            oldcontact.MobileNumber = contact.MobileNumber;
            oldcontact.HomeNumber = contact.HomeNumber;
            oldcontact.HomeAddress = contact.HomeAddress;
            oldcontact.QQ = contact.QQ;
            oldcontact.Email = contact.Email;
            oldcontact.MSN = contact.MSN;
            oldcontact.CompanyNumber = contact.CompanyNumber;
            oldcontact.CompanyAddress = oldcontact.CompanyAddress;
            oldcontact.GroupId = contact.GroupId;
            oldcontact.Remarks = contact.Remarks;
            int n = db.SaveChanges();
            if (n > 0)
            {
                return Redirect("/contact/index");
            }
           return View(contact);
        }
    }
}

四、Views的创建

代码如下(示例):

1.Login

Login.cshtml


@{
    Layout = null;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>登录</title>
    @Styles.Render("~/Content/css")
    @Scripts.Render("~/bundles/modernizr")
</head>
<body>
    <div class="container">
        <div class="panel panel-success">
            <div class="panel-heading">
                <h3 class="panel-title">通讯录登陆</h3>
            </div>
            <div class="panel-body">
                <form class="form-horizontal" role="form" method="post">
                    <div class="form-group">
                        <label for="firstname" class="col-sm-2 control-label">用户名</label>
                        <div class="col-sm-10">
                            <input type="text" class="form-control" id="username" name="username" placeholder="请输入用户名">
                        </div>
                    </div>
                    <div class="form-group">
                        <label for="lastname" class="col-sm-2 control-label">密码</label>
                        <div class="col-sm-10">
                            <input type="text" class="form-control" id="password" name="password" placeholder="请输入密码">
                        </div>
                    </div>
                    <div class="form-group">
                        <div class="col-sm-offset-2 col-sm-10">
                            <button type="submit" class="btn btn-default">登录</button>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
</body>
</html>

2.User

2.1Index.cshtml

@model List<User>
@using 通讯录.Models
@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<table class="table table-hover">
    <caption>用户列表</caption>
    <thead>
        <tr>
            <th>Id</th>
            <th>用户名</th>
            <th>密码</th>
            <th>角色</th>
            <th>操作</th>
        </tr>
    </thead>
    <tbody>
        @foreach(User user in Model)
        {
            <tr>
                <td>@user.Id</td>
                <td>@user.UserName</td>
                <td>@user.PassWord</td>
                <td>@user.Role</td>
                <td>
                    <a href="/user/edit/@user.Id" style="margin-right:5px;">修改</a>
                    <a href="/user/delete/@user.Id" onclick="return confirm('确定要删除用户 @user.UserName 吗?');">删除</a>
                </td>
            </tr>
        }
    </tbody>
</table>


2.2Add.cshtml

@model User
@using 通讯录.Models
@{
    ViewBag.Title = "Add";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">用户信息添加</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">用户名</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.UserName, new { @class = "form-control", placeholder = "请输入用户名" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">密码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.PassWord, new { @class = "form-control", placeholder = "请输入密码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">角色</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.Role, ViewBag.lstrole as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>                
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">添加</button>
                    </div>
                </div>
            </form>
    </div>
</div>
</div>


2.3Edit.cshtml

@model User
@using 通讯录.Models
@{
    ViewBag.Title = "Edit";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">用户信息修改</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">用户名</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.UserName, new { @class = "form-control", placeholder = "请输入用户名" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">密码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.PassWord, new { @class = "form-control", placeholder = "请输入密码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">角色</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.Role, ViewBag.lstrole as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">修改</button>
                    </div>
                </div>
            </form>
    </div>
</div>
</div>


3.Group

2.1 Index.cshtml

@model List<Group>
@using 通讯录.Models
@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
    <table class="table table-hover">
        <caption>分组列表</caption>
        <thead>
            <tr>
                <th>Id</th>
                <th>分组编号</th>
                <th>分钟名称</th>
                <th>备注</th>
                <th>操作</th>
            </tr>
        </thead>
        <tbody>
            @foreach (Group group in Model)
            {
                <tr>
                    <td>@group.Id</td>
                    <td>@group.GroupId</td>
                    <td>@group.GroupName</td>
                    <td>@group.Remarks</td>                   
                    <td>
                        <a href="/group/edit/@group.Id" style="margin-right:5px;">修改</a>
                        <a href="/group/delete/@group.Id" onclick="return confirm('确定要删除分组 @group.GroupName 吗?');">删除</a>
                    </td>
                </tr>
            }
        </tbody>
    </table>


2.2Add.cshtml

@model Group
@using 通讯录.Models
@{
    ViewBag.Title = "Add";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">分组信息添加</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">分组编号</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.GroupId, new { @class = "form-control", placeholder = "请输入分组编号" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">分组名称</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.GroupName, new { @class = "form-control", placeholder = "请输入分组名称" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">备注</label>
                    <div class="col-sm-10">
                        @Html.TextAreaFor(u => u.Remarks, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">添加</button>
                    </div>
                </div>
            </form>
    </div>
</div>
</div>

2.3Edit.cshtml

@model Group
@using 通讯录.Models
@{
    ViewBag.Title = "Edit";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">分组信息修改</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">分组编号</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.GroupId, new { @class = "form-control", placeholder = "请输入分组编号" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">分组名称</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.GroupName, new { @class = "form-control", placeholder = "请输入分组名称" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">备注</label>
                    <div class="col-sm-10">
                        @Html.TextAreaFor(u => u.Remarks, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">修改</button>
                    </div>
                </div>
            </form>
    </div>
</div>
</div>


4.Contact

2.1 Index.cshtml

@model List<Contact>
@using 通讯录.Models
@{
    ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<table class="table table-hover">
    <caption>分组列表</caption>
    <thead>
        <tr>
            <th>Id</th>
            <th>姓名</th>
            <th>性别</th>
            <th>生日</th>
            <th>手机号码</th>
            <th>座机号码</th>
            <th>家庭地址</th>
            <th>QQ</th>
            <th>Email</th>
            <th>MSN</th>
            <th>公司电话</th>
            <th>公司地址</th>
            <th>分组编号</th>
            <th>备注</th>
            <th>操作</th>
        </tr>
    </thead>
    <tbody>
        @foreach (Contact contact in Model)
        {
        <tr>
            <td>@contact.Id</td>
            <td>@contact.Name</td>
            <td>@contact.Gender</td>
            <td>@contact.Birthday</td>
            <td>@contact.MobileNumber</td>
            <td>@contact.HomeNumber</td>
            <td>@contact.HomeAddress</td>
            <td>@contact.QQ</td>
            <td>@contact.Email</td>
            <td>@contact.MSN</td>
            <td>@contact.CompanyNumber</td>
            <td>@contact.CompanyAddress</td>
            <td>@contact.GroupId</td>
            <td>@contact.Remarks</td>
            <td>
                <a href="/contact/edit/@contact.Id" style="margin-right:5px;">修改</a>
                <a href="/contact/delete/@contact.Id" onclick="return confirm('确定要删除联系人 @contact.Name 吗?');">删除</a>
            </td>
        </tr>
        }
    </tbody>
</table>



2.2Add.cshtml

@model Contact
@using 通讯录.Models
@{
    ViewBag.Title = "Add";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">联系人信息添加</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">姓名</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Name, new { @class = "form-control", placeholder = "请输入联系人姓名" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">性别</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.Gender, ViewBag.lsgender as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">生日</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Birthday, new { @class = "form-control", placeholder = "例如:2000-01-01" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">手机号码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.MobileNumber, new { @class = "form-control", placeholder = "请输入手机号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">座机号码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.HomeNumber, new { @class = "form-control", placeholder = "请输入座机号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">家庭地址</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.HomeAddress, new { @class = "form-control", placeholder = "请输入家庭地址" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">QQ</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.QQ, new { @class = "form-control", placeholder = "请输入QQ号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">Email</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Email, new { @class = "form-control", placeholder = "请输入电子邮箱" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">MSN</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.MSN, new { @class = "form-control", placeholder = "请输入MSN" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">公司电话</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.CompanyNumber, new { @class = "form-control", placeholder = "请输入公司电话" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">公司地址</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.CompanyAddress, new { @class = "form-control", placeholder = "请输入公司地址" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">分组编号</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.GroupId, ViewBag.lstgroupId as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">备注</label>
                    <div class="col-sm-10">
                        @Html.TextAreaFor(u => u.Remarks, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">添加</button>
                    </div>
                </div>
</div>
                
            </form>
    </div>
</div>
</div>



2.3Edit.cshtml

@model Contact
@using 通讯录.Models
@{
    ViewBag.Title = "Edit";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
<div class="container">
    <div class="panel panel-success">
        <div class="panel-heading">
            <h3 class="panel-title">联系人信息修改</h3>
        </div>
        <iv class="panel-body">
            <form class="form-horizontal" role="form" method="post">
                <div class="form-group">
                    <label for="firstname" class="col-sm-2 control-label">姓名</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Name, new { @class = "form-control", placeholder = "请输入联系人姓名" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">性别</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.Gender, ViewBag.lsgender as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">生日</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Birthday, new { @class = "form-control", placeholder = "例如:2000-01-01" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">手机号码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.MobileNumber, new { @class = "form-control", placeholder = "请输入手机号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">座机号码</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.HomeNumber, new { @class = "form-control", placeholder = "请输入座机号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">家庭地址</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.HomeAddress, new { @class = "form-control", placeholder = "请输入家庭地址" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">QQ</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.QQ, new { @class = "form-control", placeholder = "请输入QQ号码" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">Email</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.Email, new { @class = "form-control", placeholder = "请输入电子邮箱" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">MSN</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.MSN, new { @class = "form-control", placeholder = "请输入MSN" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">公司电话</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.CompanyNumber, new { @class = "form-control", placeholder = "请输入公司电话" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">公司地址</label>
                    <div class="col-sm-10">
                        @Html.TextBoxFor(u => u.CompanyAddress, new { @class = "form-control", placeholder = "请输入公司地址" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">分组编号</label>
                    <div class="col-sm-10">
                        @Html.DropDownListFor(u => u.GroupId, ViewBag.lstgroupId as IEnumerable<SelectListItem>, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <label for="lastname" class="col-sm-2 control-label">备注</label>
                    <div class="col-sm-10">
                        @Html.TextAreaFor(u => u.Remarks, new { @class = "form-control" })
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-default">修改</button>
                    </div>
                </div>
    </div>

    </form>
</div>
</div>
</div>



5.Shared

5.1_Layout.cshtml

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>@ViewBag.Title - 我的 ASP.NET 应用程序</title>
    @Styles.Render("~/Content/css")
    @Scripts.Render("~/bundles/modernizr")
</head>
<body>
    <div class="navbar navbar-inverse navbar-fixed-top">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                @Html.ActionLink("通讯录", "Index", "user", new { area = "" }, new { @class = "navbar-brand" })
            </div>
            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                            用户管理
                            <b class="caret"></b>
                        </a>
                        <ul class="dropdown-menu">
                            <li><a href="/user/index">用户管理</a></li>
                            <li class="divider"></li>
                            <li><a href="/user/add">用户添加</a></li>
                        </ul>
                    </li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                            分组管理
                            <b class="caret"></b>
                        </a>
                        <ul class="dropdown-menu">
                            <li><a href="/group/index">分组管理</a></li>
                            <li class="divider"></li>
                            <li><a href="/group/add">分组添加</a></li>
                        </ul>
                    </li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                            通讯录管理
                            <b class="caret"></b>
                        </a>
                        <ul class="dropdown-menu">
                            <li><a href="/contact/index">通讯录管理</a></li>
                            <li class="divider"></li>
                            <li><a href="/contact/add">通讯录添加</a></li>
                        </ul>
                    </li>
                </ul>
            </div>
        </div>
    </div>
    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>&copy; @DateTime.Now.Year - 我的通讯录</p>
        </footer>
    </div>

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    @RenderSection("scripts", required: false)
</body>
</html>

5.2Error.cshtml

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport" content="width=device-width" />
    <title>错误</title>
</head>
<body>
    <hgroup>
        <h1>错误。</h1>
        <h2>处理你的请求时出错。</h2>
    </hgroup>
</body>
</html>


总结

提示:以上就是通讯录的代码,需要源码可以在文章最顶部链接进行下载

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值