iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ASP.NET MVC如何使用Identity增删改查用户
  • 159
分享到

ASP.NET MVC如何使用Identity增删改查用户

2023-07-04 10:07:37 159人浏览 八月长安
摘要

这篇文章主要讲解了“asp.net mvc如何使用Identity增删改查用户”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.net MVC如何使用Identity

这篇文章主要讲解了“asp.net mvc如何使用Identity增删改查用户”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.net MVC如何使用Identity增删改查用户”吧!

在VS2013中创建一个MVC项目,用默认的"无身份验证"作为身份验证机制。

通过控制台下载Bootstrap。

Install-Package -version 3.0.3 bootstrap

下载成功后,在解决方案下的Content和Scripts多了该版本的CSSjs文件。

把创建项目默认HomeController中的所有Action以及/Views/Home下的所有视图删除。

热热身

先来做一个简单练习。

在HomeController中的Index方法中,把一个字典传递给视图。

    public class HomeController : Controller    {        public ActionResult Index()        {            Dictionary<string, object> data = new Dictionary<string, object>();            data.Add("placeholder", "placeholder");            return View(data);        }    }

_Layout.cshtml设置如下:

<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>ASP.NET Identity实战</title>    <link href="~/Content/bootstrap.min.css" rel="external nofollow"  rel="stylesheet" />    <link href="~/Content/bootstrap-theme.min.css" rel="external nofollow"  rel="stylesheet" />    <style>        .container {padding-top:10px;}        .validation-summary-errors{color:red;}    </style></head><body>        <div class="container">        @RenderBody()    </div>    @Scripts.Render("~/bundles/Jquery")    @Scripts.Render("~/bundles/bootstrap")    @RenderSection("scripts", required: false)</body>

Home/Index.cshtml视图中:

@{    ViewBag.Title = "Index";    Layout = "~/Views/Shared/_Layout.cshtml";}<div class="panel panel-primary">    <div class="panel-heading">用户明细</div>    <table class="table table-striped">        @foreach (string key in Model.Keys)        {            <tr>                <th>@key</th>                <td>@Model[key]</td>            </tr>        }    </table></div>

ASP.NET MVC如何使用Identity增删改查用户

前期准备

分别安装如下组件。

Install-Package Microsoft.AspNet.Identity.EntityFramework &ndash;Version 2.0.0
Install-Package Microsoft.AspNet.Identity.OWIN -Version 2.0.0
Install-Package Microsoft.Owin.Host.SystemWEB -Version 2.1.0

配置Web.config如下:

<?xml version="1.0" encoding="utf-8"?><!--  有关如何配置 ASP.NET 应用程序的详细信息,请访问  http://Go.microsoft.com/fwlink/?LinkId=301880  --><configuration>  <configSections>    <!-- For more infORMation on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />  </configSections>  <connectionStrings>    <add name="IdentityDb" providerName="System.Data.sqlClient" connectionString="Data Source=(localdb)\v11.0;Initial Catalog=IdentityDb;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;MultipleActiveResultSets=True"/></connectionStrings>  <appSettings>    <add key="webpages:Version" value="3.0.0.0" />    <add key="webpages:Enabled" value="false" />    <add key="ClientValidationEnabled" value="true" />    <add key="UnobtrusivejavascriptEnabled" value="true" />    <add key="owin:AppStartup" value="WebApplication4.IdentityConfig" />  </appSettings>  <system.web>    <compilation debug="true" targetFramework="4.5" />    <httpRuntime targetFramework="4.5" />  </system.web>  <runtime>    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">      <dependentAssembly>        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />      </dependentAssembly>      <dependentAssembly>        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />        <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" />      </dependentAssembly>      <dependentAssembly>        <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" />        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" />      </dependentAssembly>      <dependentAssembly>        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />      </dependentAssembly>      <dependentAssembly>        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />        <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />      </dependentAssembly>    </assemblyBinding>  </runtime>  <entityFramework>    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />    <providers>      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />    </providers>  </entityFramework></configuration>

以上,

  • 增加了connectionStrings节点,将自动创建localdb数据库

  • 在appSettings节点中增加了一个key为owin:AppStartup项,这是确保OWIN运行正常的全局配置

在Models文件夹下创建如下类。

    public class AppUser : IdentityUser    {    }

在解决方案下创建Infrastructure文件夹。

在Infrastructure文件夹下创建一个上下文类,需要实现IdentityDbContext<>接口。

   public class AppIdentityDbContext : IdentityDbContext<AppUser>    {        public AppIdentityDbContext()            : base("IdentityDb")        {        }        static AppIdentityDbContext()        {            //使用EF Code First第一次创建的时候调用            Database.SetInitializer<AppIdentityDbContext>(new IdentityDbInit());        }        public static AppIdentityDbContext Create()        {            return new AppIdentityDbContext();        }    }    //初始化    public class IdentityDbInit : DropCreateDatabaseIfModelChanges<AppIdentityDbContext>    {        protected override void Seed(AppIdentityDbContext context)        {            PerformInitialSetup(context);            base.Seed(context);        }        //初始化工作        public void PerformInitialSetup(AppIdentityDbContext context)        { }    }

在Infrastructure文件夹下创建一个管理用户的类,需要继承UserManager<AppUser>类。

还记得,先前在appSettings节点中配置了一个如下方式:

<add key="owin:AppStartup" value="WebApplication4.IdentityConfig" />

OWIN需要一个全局启动文件,默认会到项目的顶级命名空间下找IdentityConfig这个类。

那就在App_Start中创建IdentityConfig这个类,这个类在WebApplication4这个命名空间下。

namespace WebApplication4{    public class IdentityConfig    {        public void Configuration(IAppBuilder app)        {            app.CreatePerOwinContext<AppIdentityDbContext>(AppIdentityDbContext.Create);            app.CreatePerOwinContext<AppUserManager>(AppUserManager.Create);            app.UseCookieAuthentication(new CookieAuthenticationOptions {                 AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,                LoginPath = new Microsoft.Owin.PathString("/Account/Login")            });        }    }}

显示用户

创建AdminController,现在可以向视图传递所有的用户了,编写如下:

    public class AdminController : Controller    {        public ActionResult Index()        {            return View(UserManager.Users);        }        private AppUserManager UserManager        {            get            {                return HttpContext.GetOwinContext().GetUserManager<AppUserManager>();            }        }    }

再创建Admin/Index.cshtml类型为IEnumerable<AppUser>的强类型视图。

@model IEnumerable<WebApplication4.Models.AppUser>@{    ViewBag.Title = "Index";    Layout = "~/Views/Shared/_Layout.cshtml";}<div class="panel panel-primary">    <div class="panel-heading">        所有用户账户    </div>    <table class="table table-striped">        <tr><th>ID</th><th>Name</th><th>Email</th><th></th></tr>        @if (Model.Count() == 0)        {            <tr><td colspan="4" class="text-center">还没有创建用户</td></tr>        }        else        {            foreach (WebApplication4.Models.AppUser user in Model)            {                <tr>                    <td>@user.Id</td>                    <td>@user.UserName</td>                    <td>@user.Email</td>                    <td>                        @using (Html.BeginForm("Delete", "Admin",                            new { id = user.Id }))                        {                            @Html.ActionLink("编辑", "Edit", new { id = user.Id },                                    new { @class = "btn btn-primary btn-xs" })                            <button class="btn btn-danger btn-xs"                                    type="submit">                                删除                            </button>                        }                    </td>                </tr>            }        }    </table></div>@Html.ActionLink("创建用户", "Create", null, new { @class = "btn btn-primary" })

ASP.NET MVC如何使用Identity增删改查用户

创建用户

在Models文件夹下创建一个视图模型。

namespace WebApplication4.Models{    public class CreateModel    {        public string Id { get; set; }        [Required]        public string Name { get; set; }        [Required]        public string Email { get; set; }        [Required]        public string PassWord { get; set; }    }}

在AdminController中添加创建用户相关的方法。

   public class AdminController : Controller    {        public ActionResult Index()        {            return View(UserManager.Users);        }        //创建显示        public ActionResult Create()        {            return View();        }        [HttpPost]        public async Task<ActionResult> Create(CreateModel model)        {            if(ModelState.IsValid)            {                var user = new AppUser{UserName = model.Name, Email = model.Email};                IdentityResult result = await UserManager.CreateAsync(user, model.Password);                if(result.Succeeded)                {                    return RedirectToAction("Index");                }else{                    AddErrorsFromResult(result);                }            }            return View(model);        }        //创建接收        private void AddErrorsFromResult(IdentityResult result)        {            foreach(var error in result.Errors)            {                ModelState.AddModelError("", error);            }        }        private AppUserManager UserManager        {            get            {                return HttpContext.GetOwinContext().GetUserManager<AppUserManager>();            }        }    }

在Admin/Create.cshtml视图页中:

@model WebApplication4.Models.CreateModel@{    ViewBag.Title = "Create";    Layout = "~/Views/Shared/_Layout.cshtml";}<h3>Create</h3>@using (Html.BeginForm()) {    @Html.AntiForgeryToken()        <div class="form-horizontal">        <h5>创建用户</h5>        <hr />        @Html.ValidationSummary(true)        <div class="form-group">            @Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Name)                @Html.ValidationMessageFor(model => model.Name)            </div>        </div>        <div class="form-group">            @Html.LabelFor(model => model.Email, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Email)                @Html.ValidationMessageFor(model => model.Email)            </div>        </div>        <div class="form-group">            @Html.LabelFor(model => model.Password, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Password)                @Html.ValidationMessageFor(model => model.Password)            </div>        </div>        <div class="form-group">            <div class="col-md-offset-2 col-md-10">                <input type="submit" value="创建用户" class="btn btn-default" />            </div>        </div>    </div>}<div>    @Html.ActionLink("返回", "Index")</div>

ASP.NET MVC如何使用Identity增删改查用户

点击"创建"按钮,创建成功返回显示用户页面。

ASP.NET MVC如何使用Identity增删改查用户

oh, my god,只是配置了一下就有数据了? 数据在哪呢?

点击左上角的"服务器资源管理器",右键"IdentityDb",点击"刷新"。

ASP.NET MVC如何使用Identity增删改查用户

再打开AspNetUsers表,刚创建的用户赫然在列。

ASP.NET MVC如何使用Identity增删改查用户

好像还有点欠缺,用户输入密码的时候,总应该有些限制吧。

能想到的,ASP.NET Identity都为我们准备好了。有一个PasswordValidator类就是干这个的。

在Infrastructure文件夹中创建一个PasswordValidator类的继承子类。

namespace WebApplication4.Infrastructure{    public class CustomPasswordValidator : PasswordValidator    {        public override async Task<IdentityResult> ValidateAsync(string pass)        {            IdentityResult result = await base.ValidateAsync(pass);            if (pass.Contains("12345"))            {                var errors = result.Errors.ToList();                errors.Add("密码中包含太多连续数字");                result = new IdentityResult(errors);            }            return result;        }    }}

然后需要把这个规则告诉UserManager。

namespace WebApplication4.Infrastructure{    public class AppUserManager : UserManager<AppUser>    {        public AppUserManager(IUserStore<AppUser> store) : base(store) { }        public static AppUserManager Create(IdentityFactoryOptions<AppUserManager> options, IOwinContext context)        {            //identity ef上下文            AppIdentityDbContext db = context.Get<AppIdentityDbContext>();            //与identity ef相关的UserStore            IUserStore<AppUser> us = new UserStore<AppUser>(db);            AppUserManager manager = new AppUserManager(us);            //密码相关            manager.PasswordValidator = new CustomPasswordValidator {                 RequiredLength = 6,                RequireNonLetterOrDigit = false,                RequireDigit = false,                RequireLowercase = true,                RequireUppercase = true            };            return manager;        }    }}

再次运行程序,创建用户页面,尝试输入不通过的密码。

ASP.NET MVC如何使用Identity增删改查用户

不过,关于密码的规则,似乎可以在View Model的验证层面就可以解决掉。

编辑和删除用户

在AdminController中增加编辑和删除的部分。

    public class AdminController : Controller    {        public ActionResult Index()        {            return View(UserManager.Users);        }        //创建显示        public ActionResult Create()        {            return View();        }        //创建接收        [HttpPost]        public async Task<ActionResult> Create(CreateModel model)        {            if(ModelState.IsValid)            {                var user = new AppUser{UserName = model.Name, Email = model.Email};                IdentityResult result = await UserManager.CreateAsync(user, model.Password);                if(result.Succeeded)                {                    return RedirectToAction("Index");                }else{                    AddErrorsFromResult(result);                }            }            return View(model);        }        //编辑显示        public async Task<ActionResult> Edit(string id)        {            AppUser user = await UserManager.FindByIdAsync(id);                        if(User != null)            {                CreateModel createModel = new CreateModel();                createModel.Id = user.Id;                createModel.Email = user.Email;                createModel.Name = user.UserName;                createModel.Password = user.PasswordHash;                return View(createModel);            }            else            {                return RedirectToAction("Index");            }        }        //接收编辑        [HttpPost]        public async Task<ActionResult> Edit(CreateModel createModel)        {                        if(ModelState.IsValid)            {                AppUser user = await UserManager.FindByIdAsync(createModel.Id);                if (user != null)                {                    //关于邮箱                    user.Email = createModel.Email;                    IdentityResult validEmail = await UserManager.UserValidator.ValidateAsync(user);                    if (!validEmail.Succeeded)                    {                        AddErrorsFromResult(validEmail);                    }                    user.UserName = createModel.Name;                    //关于密码                    IdentityResult validPass = null;                    if (createModel.Password != string.Empty)                    {                        validPass = await UserManager.PasswordValidator.ValidateAsync(createModel.Password);                        if (validPass.Succeeded)                        {                            user.PasswordHash = UserManager.PasswordHasher.HashPassword(createModel.Password);                        }                        else                        {                            AddErrorsFromResult(validPass);                        }                    }                    user.Email = createModel.Email;                    //验证结果                    if ((validEmail.Succeeded && validPass == null) || (validEmail.Succeeded    && createModel.Password != string.Empty && validPass.Succeeded))                    {                        IdentityResult result = await UserManager.UpdateAsync(user);                        if (result.Succeeded)                        {                            return RedirectToAction("Index");                        }                        else                        {                            AddErrorsFromResult(result);                        }                    }                    else                    {                        ModelState.AddModelError("", "无此用户");                    }                }                return View(createModel);            }            else            {                return View(createModel);            }                    }        //删除        [HttpPost]        public async Task<ActionResult> Delete(string id)        {            AppUser user = await UserManager.FindByIdAsync(id);            if(user != null)            {                IdentityResult result = await UserManager.DeleteAsync(user);                if(result.Succeeded)                {                    return RedirectToAction("Index");                }                else                {                    return View("Error", result.Errors);                }            }            else            {                return View("Error", new string[] { "没有此用户" });            }        }        private void AddErrorsFromResult(IdentityResult result)        {            foreach(var error in result.Errors)            {                ModelState.AddModelError("", error);            }        }        private AppUserManager UserManager        {            get            {                return HttpContext.GetOwinContext().GetUserManager<AppUserManager>();            }        }    }

Admin/Edit.cshtml视图。

@model WebApplication4.Models.CreateModel@{    ViewBag.Title = "Edit";    Layout = "~/Views/Shared/_Layout.cshtml";}<h3>Edit</h3>@using (Html.BeginForm()){    @Html.AntiForgeryToken()        <div class="form-horizontal">        <hr />        @Html.ValidationSummary(true)        @Html.HiddenFor(model => model.Id)        <div class="form-group">            @Html.LabelFor(model => model.Name, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Name)                @Html.ValidationMessageFor(model => model.Name)            </div>        </div>        <div class="form-group">            @Html.LabelFor(model => model.Email, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Email)                @Html.ValidationMessageFor(model => model.Email)            </div>        </div>        <div class="form-group">            @Html.LabelFor(model => model.Password, new { @class = "control-label col-md-2" })            <div class="col-md-10">                @Html.EditorFor(model => model.Password)                @Html.ValidationMessageFor(model => model.Password)            </div>        </div>        <div class="form-group">            <div class="col-md-offset-2 col-md-10">                <input type="submit" value="保存" class="btn btn-default" />            </div>        </div>    </div>}<div>    @Html.ActionLink("返回", "Index")</div>

另外,如果删除失败,跳转到Shared/Error.cshtml视图页。

@model IEnumerable<string>@{ ViewBag.Title = "Error";}<div class="alert alert-danger">    @switch (Model.Count())    {        case 0:            @: Something went wrong. Please try again            break;        case 1:        @Model.First();                          break;        default:        @: 发现如下错误:        <ul>            @foreach (string error in Model)            {                <li>@error</li>            }        </ul>            break;    }</div>@Html.ActionLink("确定", "Index", null, new { @class = "btn btn-default" })

感谢各位的阅读,以上就是“ASP.NET MVC如何使用Identity增删改查用户”的内容了,经过本文的学习后,相信大家对ASP.NET MVC如何使用Identity增删改查用户这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: ASP.NET MVC如何使用Identity增删改查用户

本文链接: https://www.lsjlt.com/news/344349.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ASP.NET MVC如何使用Identity增删改查用户
    这篇文章主要讲解了“ASP.NET MVC如何使用Identity增删改查用户”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET MVC如何使用Identity...
    99+
    2023-07-04
  • ASP.NET MVC使用Identity增删改查用户
    源码在这里:https://github.com/darrenji/UseIdentityCRUDUserInMVC,本地下载 在VS2013中创建一个MVC项目,用默认的"...
    99+
    2022-11-13
    ASP.NET MVC Identity 增删改查用户
  • ASP.NET MVC+EF实现异步增删改查
    目录功能实现1、搭建UI层2、添加实体类3、添加服务接口层4、添加Entity Framework1、开启迁移2、增加迁移3、生成数据库5、添加接口的实现类6、添加控制器功能实现 我...
    99+
    2024-04-02
  • ASP.NET Core使用EF SQLite对数据库增删改查
    目录1新建ASP.NETCoreMVC应用1.1新建MVC应用1.2引入NuGet包引入教程依赖项2新建模型和上下文2.1新建模型类2.2新建上下文步骤1步骤2步骤33配置服务1直接...
    99+
    2024-04-02
  • Linux用户的增、删、改、查方法
    这篇文章主要介绍“Linux用户的增、删、改、查方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Linux用户的增、删、改、查方法”文章能帮助大家解决问题。Linux系统是一个多用户多任务的分时操...
    99+
    2023-06-28
  • JavaWeb如何使用DBUtils实现增删改查
    这篇文章主要讲解了“JavaWeb如何使用DBUtils实现增删改查”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaWeb如何使用DBUtils实现增删改查”吧!JavaWeb 使用D...
    99+
    2023-06-21
  • 如何使用Jorm增删查改数据库
    这篇文章主要介绍“如何使用Jorm增删查改数据库”,在日常操作中,相信很多人在如何使用Jorm增删查改数据库问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用Jorm增删...
    99+
    2024-04-02
  • ASP.NET Core怎么使用EF SQLite对数据库增删改查
    这篇文章将为大家详细讲解有关ASP.NET Core怎么使用EF SQLite对数据库增删改查,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1 新建ASP.NET Cor...
    99+
    2023-06-26
  • 怎么实现JavaWeb用户的增删改查
    本篇内容介绍了“怎么实现JavaWeb用户的增删改查”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!准备工作后端技术前端技术角色维护-分页实现...
    99+
    2023-06-16
  • ASP.NET MVC中如何使用MvcPager
    这篇“ASP.NET MVC中如何使用MvcPager”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来...
    99+
    2024-04-02
  • php如何使用mongodb进行增删查改操作
    本文小编为大家详细介绍“php如何使用mongodb进行增删查改操作”,内容详细,步骤清晰,细节处理妥当,希望这篇“php如何使用mongodb进行增删查改操作”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、M...
    99+
    2023-07-05
  • 使用HttpClient增删改查ASP.NETWebAPI服务
    本篇体验使用HttpClient对ASP.NET Web API服务实现增删改查。 创建ASP.NET Web API项目 新建项目,选择"ASP.NET MVC 4 We...
    99+
    2022-11-13
    HttpClient 增删改查 ASP.NET Web API服务
  • 如何使用Node.js和Redis实现增删改查操作
    这篇文章主要介绍“如何使用Node.js和Redis实现增删改查操作”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何使用Node.js和Redis实现增删改查操作”文章能帮助大家解决问题。什么是N...
    99+
    2023-07-05
  • 如何利用PHP+Mysql实现增删改查
    这篇文章主要介绍了如何利用PHP+Mysql实现增删改查,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。PHP+Mysql实现增删改查PHP 是一种创建动态交互性站点的强有力的...
    99+
    2023-06-22
  • 如何使用MybatisPlus快速进行增删改查详解
    目录前言:1.数据库建表2.新建一个springboot项目(1)、引入相应的jar包(2)、快速启动项目3.springboot结合mybatisplus(1)、引入mybatis...
    99+
    2022-11-13
    mybatisplus增删改查实例 mybatisplus增删改查方法 mybatis增删改查项目
  • Entity Framework使用DBContext实现增删改查
    有一段时间没有更新博客了,赶上今天外面下雨,而且没人约球,打算把最近对Entity Framework DBContext使用的心得梳理一下,早些时候在网上简单查过,对于最新版本的E...
    99+
    2022-11-13
    Entity Framework DBContext 增删改查
  • Vue用户管理的增删改查功能详解
    目录1、向api请求发出查询用户列表数据,渲染表单数据2、通过v-model绑定查询数据,进行表单信息查询3、通过改变布尔值,来控制打开取消添加用户对话框4、通过动态绑定curren...
    99+
    2024-04-02
  • Mybatis如何实现增删改查
    这篇文章主要介绍了Mybatis如何实现增删改查,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Mybatis实现增删改查一.mybatis的配置1.1 添加相应的jar包在l...
    99+
    2023-06-26
  • SQL如何实现增删改查
    这篇文章给大家分享的是有关SQL如何实现增删改查的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。SQL 是用于访问和处理数据库的标准的计算机语言。注意哟,SQL是一门语言。而MyS...
    99+
    2024-04-02
  • 如何使用Sqlite+RecyclerView+Dialog对数据进行增删改查
    小编给大家分享一下如何使用Sqlite+RecyclerView+Dialog对数据进行增删改查,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!原题目要求:(1)通过“添加联系人”按钮,跳转...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作