ASP.NET MVC-api增删改查

ASP.NET MVC-api增删改查使用ASP.NETMVC-api技术实现对数据库的增删改查创建mvcapi项目创建完毕后的目录添加模型类接着在models文件夹添加实体数据模型,引入EF数据库,具体方法参考我之前的EF文章。然后在models中添加两个类,用于反馈操作是否成功。error类publicclassError{///<summary>///错误返回对象<br/>///exp:<br/>

大家好,又见面了,我是你们的朋友全栈君。

使用ASP.NET MVC-api技术实现对数据库的增删改查

创建mvc api项目

创建完毕后的目录

创建完成
添加模型类

接着在models文件夹添加实体数据模型,引入EF数据库,具体方法参考我之前的EF文章。
在这里插入图片描述
然后在models中添加两个类,用于反馈操作是否成功。
error类

    public class Error
    { 
   
        /// <summary>
        /// 错误返回对象<br />
        /// exp:<br />
        /// 登录错误<br/ >
        /// 数据库连接失败<br />
        /// </summary>
        /// <param name="message"></param>
        public Error(string message)
        { 
   
            this.code = -1;
            this.message = message;
            this.result = null;
        }

        public int code { 
    get; set; }
        public string message { 
    get; set; }
        public object result { 
    get; set; }
    }

success类

    public class Success
    { 
   
        /// <summary>
        /// 成功返回对象<br/>
        /// exp:<br/>
        /// 登陆成功
        /// </summary>
        /// <param name="message"></param>
        /// <param name="result"></param>
        public Success(string message, object result)
        { 
   
            this.code = 200;
            this.message = message;
            this.result = result;
        }

        public int code { 
    get; set; }
        public string message { 
    get; set; }
        public object result { 
    get; set; }

    }

配置api
在App_Start文件夹的WebApiConfig.cs文件里边配置。

			// Web API 配置和服务
            GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();

修改访问路径以方便测试访问

api/{controller}/{action}/{id}

接下来进入正题,新建Test控制器

查询所有

		[HttpGet]
        public object GetInfo()
        { 
   
            using(rj190xEntities db = new rj190xEntities())
            { 
   
                return new Success("查询成功", db.girl1907.ToList());
            }
        }

在postman中测试

{ 
   
    "code": 200,
    "message": "查询成功",
    "result": [
        { 
   
            "id": "15FF969B178B42D698F7162F7A56C90D",
            "createDate": "2021-06-11T09:20:02.757",
            "nickName": "111",
            "introduce": "111"
        },
        { 
   ...}
}

添加

        [HttpPost]
        public object AddInfo(string nickName,string introduce)
        { 
   
            if (string.IsNullOrEmpty(nickName)||string.IsNullOrEmpty(introduce))
            { 
   
                return new Error("参数不允许为空!");
            }
            girl1907 g = new girl1907();
            g.id = System.Guid.NewGuid().ToString("N");
            g.createDate = DateTime.Now;
            g.nickName = nickName;
            g.introduce = introduce;
            using (rj190xEntities db = new rj190xEntities())
            { 
   
                db.girl1907.Add(g);
                int rows = db.SaveChanges();
                if (rows>0)
                { 
   
                    return new Success("添加成功!", g.id);
                }
                else
                { 
   
                    return new Error("添加失败");
                }
            }
        }

测试

{ 
   
    "code": 200,
    "message": "添加成功!",
    "result": "20f5dc112e494c349db90ccd561bc96c"
}

删除

        [HttpPost]
        public object DeleteById(string id)
        { 
   
            if (string.IsNullOrEmpty(id))
            { 
   
                return new Error("id为空!");
            }
            using (rj190xEntities db = new rj190xEntities())
            { 
   
                girl1907 g = db.girl1907.Where(o => o.id == id).SingleOrDefault();
                if (g==null)
                { 
   
                    return new Error("没有此用户!");
                }
                db.girl1907.Remove(g);
                int rows = db.SaveChanges();
                if (rows>0)
                { 
   
                    return new Success("删除成功!", g.id);
                }
                else
                { 
   
                    return new Error("删除失败");
                }
            }
        }

测试

{ 
   
    "code": 200,
    "message": "删除成功!",
    "result": "8ffea198c8ca4bb187229a90e24ac865"
}

精准查询

        [HttpGet]
        public object SelectById(string id)
        { 
   
            if (string.IsNullOrEmpty(id))
            { 
   
                return new Error("id为空!");
            }
            using (rj190xEntities db = new rj190xEntities())
            { 
   
                girl1907 g = db.girl1907.Where(o => o.id.Equals(id)).SingleOrDefault();
                if (g==null)
                { 
   
                    return new Error("没有此用户!");
                }
                return new Success("查询成功", g);
            }
        }

查询刚刚删除的用户测试

{ 
   
    "code": -1,
    "message": "没有此用户!",
    "result": null
}

修改

        [HttpPost]
        public object UpdateById(string id,string nickName,string introduce)
        { 
   
            if (string.IsNullOrEmpty(id)||string.IsNullOrEmpty(nickName)||string.IsNullOrEmpty(introduce))
            { 
   
                return new Error("参数为空!");
            }
            using (rj190xEntities db = new rj190xEntities())
            { 
   
                girl1907 g = db.girl1907.Where(o => o.id.Equals(id)).SingleOrDefault();
                if (g==null)
                { 
   
                    return new Error("没有此用户!");
                }
                g.nickName = nickName;
                g.introduce = introduce;
                int rows = db.SaveChanges();
                if (rows>0)
                { 
   
                    return new Success("修改成功!",g.id);
                }
                return new Error("修改失败!");
            }
        }

测试

{ 
   
    "code": 200,
    "message": "修改成功!",
    "result": "8ffea198c8ca4bb187229a90e24ac865"
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162937.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 博客园博客背景图片设置

    博客园博客背景图片设置首先在博客园后台管理页面的相册上传自己想要设置背景的图片:上传完成之后点击该图片进去:看到大图再通过控制台获取路径然后转到设置:加上如下代码:最后效果:

  • 情感词典构建_晦涩情感词典

    情感词典构建_晦涩情感词典看到一篇文章写的很清楚简洁,直接转了。————————————————————————————————————————某主席说,“没有情感词典的“使用该情感词典进行情感分析”都是耍流氓。”某帝说,“要有情感词典。”

  • JDBC_1原理及增刪改查「建议收藏」

    JDBC_1原理及增刪改查「建议收藏」JBDC数据的持久化:把数据保存到磁盘上。JDBC是java访问数据库的基石,JDO,Hibernate,Mybatis等都是基于JDBCJDBC是一个独立于特定数据库的管理系统,通用的SQL数据库存取和操作的公共接口配置文件:jdbc.propertiesuser=rootpassword=abc123url=jdbc:mysql://localhost:3306/testdriverClass=com.mysql.jdbc.Driver获取Connectionpublic s

  • linux svn服务器搭建和配置_如何搭建web服务器

    linux svn服务器搭建和配置_如何搭建web服务器1.安装SVN服务器:检查是否已安装#rpm-qasubversion安装SVN服务器#yuminstallhttpdhttpd-develsubversionmod_dav_svnmod_auth_mysql验证安装#cd/etc/httpd/modules#ls|grepsvnmod_authz_svn.somod_dav_…

  • 接口测试之Postman使用全指南(原来使用 Postman测试API接口如此简单)

    接口测试之Postman使用全指南(原来使用 Postman测试API接口如此简单)Postman是一个可扩展的API开发和测试协同平台工具,可以快速集成到CI/CD管道中。旨在简化测试和开发中的API工作流,如:使用Newman运行Postman集合Postman工具有Chrome扩展和独立客户端,推荐安装独立客户端。Postman有个Workspace的概念,workspace分personal和team类型。Personalworkspace只能自己查看。

  • 音频编辑大师 3.3 注冊名 注冊码

    音频编辑大师 3.3 注冊名 注冊码

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号