第一步,Model建立Ado.net实体模型。

第二部,Controller建立增删查改方法

public static HttpResponseMessage toJson(Object obj)
        {
            String str;
            if (obj is String || obj is Char)
            {
                str = obj.ToString();
            }
            else
            {
                JavaScriptSerializer serializer = new JavaScriptSerializer();
                str = serializer.Serialize(obj);
            }
            HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(str, Encoding.GetEncoding("UTF-8"),   "application/json")  };
            return result;
        }

public HttpResponseMessage get()
        {

var jg = db.user.ToList();
            return toJson(jg);

}

protected override void Dispose(bool disposing)
        {
            db.Dispose();
            base.Dispose(disposing);
        }

连接数据库:vs界面左侧服务器资源管理器中连接数据库,在web.config中修改或添加

<connectionStrings>
    <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-webapitest1-20170420100509;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-webapitest1-20170420100509.mdf" />
    <add name="testDBEntities" connectionString="metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=testDB;persist security info=True;user id=sa;password=123456; MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

第三部:view视图页面 Index.cshtml

@{
    Layout = null;
}
<script src="~/Scripts/jquery-1.7.1.min.js"></script>
<table id="customerTable" border="0" cellpadding="3">
    <tr>
        <th>UserID</th>
        <th>login</th>
        <th>pwd</th>
        <th>Actions</th>
    </tr>
    <tr>
        <td>
            <input type="text" id="txtCustomerId" size="5" />
        </td>
        <td>
            <input type="text" id="txtCompanyName" />
        </td>
        <td>
            <input type="text" id="txtContactName" />
        </td>
        <td>
            <input type="button" name="btnInsert" value="Insert" />
        </td>
    </tr>
</table>
<script type="text/javascript">
    $(function () {
        $.getJSON("api/user", LoadCustomers);
    });
    function LoadCustomers(data) {
        $("#customerTable").find("tr:gt(1)").remove();
        $.each(data, function (key, val) {
            var tableRow = '<tr>' + '<td>' + val.userId + '</td>' +
            '<td><input type="text" value="' + val.login + '" /></td>' +
            '<td><input type="text" value="' + val.pwd + '" /></td>' +
            '<td><input type="button" name="btnUpdate" value="修改" />' +
            '<input type="button" name="btnDelete" value="删除" /></td>' +
            '</tr>';
            $('#customerTable').append(tableRow);
        });
        $("input[name='btnInsert']").click(OnInsert);
        $("input[name='btnUpdate']").click(OnUpdate);
        $("input[name='btnDelete']").click(OnDelete);
    }
    function OnInsert() {
        var userId = $("#txtCustomerId").val();
        var login = $("#txtCompanyName").val();
        var pwd = $("#txtContactName").val();
        var data = '{"userId":"' + userId + '","login":"' + login + '","pwd":"' + pwd + '"}}';
        $.ajax({
            type: 'POST',
            url: '/api/user',
            data: data,
            contentType: "application/json; charset=utf-8",
            dataType: 'json',
            success: function (result) {
                $("#txtCustomerId").val('');
                $("#txtCompanyName").val('');
                $("#txtContactName").val('');
                $("#txtCountry").val('');
                $.getJSON("api/user", LoadCustomers);
                alert('Customer Added !');
            }
        }).fail(
    function (xhr, textStatus, err) {
        alert('添加失败,原因如下: ' + err);
    });

}
    function OnUpdate() {

var userId = $(this).parent().parent().children().get(0).innerHTML;;

var login = $($(this).parent().parent().children().get(1)).find("input").val();

var pwd = $($(this).parent().parent().children().get(2)).find("input").val();;

var data = '{"userId":"' + userId + '","login":"' + login + '","pwd":"' + pwd + '"}}';

$.ajax({
            type: 'PUT',
            url: '/api/user/' + userId,
            data: data,
            contentType: "application/json; charset=utf-8",
            dataType: 'json',
            success: function (results) {
                $.getJSON("api/user", LoadCustomers);
                alert('Customer Updated !');
            }
        }).fail(function (xhr, textStatus, err) {
            alert('Failed update! The reason is : ' + err);
        });
    }
 
    function OnDelete() {
        var userId = $(this).parent().parent().children().get(0).innerHTML;
        $.ajax({
            type: 'DELETE',
            url: '/api/user/' + userId,
            contentType: "application/json; charset=utf-8",
            dataType: 'json',
            success: function (results) {
                $.getJSON("api/user", LoadCustomers);
                alert('Customer Deleted!');
            }
        }).fail(function (xhr, textStatus, err) {
            alert("Delete error ! The reason is :" + err);
        });

}
</script>

转载于:https://www.cnblogs.com/suan1717/p/6747134.html

webapi+EF(增删改查)相关推荐

  1. 1.WebApi是什么webApi实现增删改查操作

    1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...

  2. 基于Angular5和WebAPI的增删改查(一)

    由于公司后续项目重构,可能会用到Angular5. 所以花点时间学习一波,把学习成果分享给大家. 因为是事后补写帖子,很多描述比较简略.有疑问的地方,还请多多指教! 开始之前,你需要给你的计算机,安装 ...

  3. MCV EF增删改查

    1.先创建一个MVC项目,创建完成后再webconfig.fig的<entityFramework>标签之前增加 <connectionStrings>     <add ...

  4. ef增删改查的四种方式

    先自定义一个查询语句 int[] nums = new int[7] { 1, 2, 3, 4, 5, 6, 7 };//var onum = from int n in nums where n % ...

  5. asp.net mysql 增删该查_asp.net 数据库的增删改查

    Asp.net MVC 学习之路-003(增删改查,后端手工,前端生成) 时间:2017-03-09 Asp.net Mvc实现增删改查 1, 创建数据库 可参考我写的EntityFramework实 ...

  6. 使用EF框架实现MVC的增删改查功能!!!Entity Framework

    一.什么是EF? ADO.NETEntity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案.ADO.NET Entity Fram ...

  7. [.NET源码] EF的增删改查

    EF的增删改查 创建上下文对象:WordBoradEntities db = new WordBoradEntities(); 一.添加: //1.1创建实体对象 User uObj = new Us ...

  8. 【EF学习笔记09】----------使用 EntityState 枚举标记实体状态,实现增删改查

    [EF学习笔记09]----------使用 EntityState 枚举标记实体状态,实现增删改查 讲解之前,先来看一下我们的数据库结构:班级表 学生表 如上图,实体状态由EntityState枚举 ...

  9. 国产化之路-统信UOS /Nginx /Asp.Net Core+ EF Core 3.1/达梦DM8实现简单增删改查操作

    引言 经过前期的准备工作,.net core 3.1的运行环境和WEB服务器已经搭建完毕,这里需要注意一下,达梦DM8数据库对于Entity Framework Core 3.1 的驱动在NuGet官 ...

最新文章

  1. openstack对接华为存储
  2. java json格式的转换和读取
  3. 操作索引库-mapping属性
  4. 一个域名解析到另一个域名_注册域名公司|教你如何注册一个.net域名
  5. JavaScript 获得当前日期+时间
  6. android 游戏的源程序代码类型,代码准备重写实现网络游戏 [开源]历时5天一款完整的文字策略养成类型游戏完成了...
  7. 【转载】最好女孩子概率模型
  8. win8系统电脑中病毒了怎么办,如何解决win8电脑中毒
  9. VB求最大公约数的两个例子
  10. org.apache.ibatis.reflection.ReflectionException: There is no getter for property named ‘medicinesId
  11. electron图标
  12. Java计算花费时间的模板设计模式
  13. 基于Python实现的合同管理系统设计
  14. python报错TypeError: must be str, not int
  15. 计算机组成原理常见题(四)
  16. html程序国庆节祝福,2018有关于国庆节的祝福语
  17. python 给手机发送邮件消息
  18. 运维开发面试常见问题汇总(一直在更新)
  19. 【科技与狠货】云盘变硬盘
  20. 2020.10.29--AI--3D字体海报设计平面设计、扭曲变换花朵制作、混合工具毛绒爱心制作

热门文章

  1. Java程序员应该收藏的书籍
  2. 无需编码创建app--应用之星制作app教程
  3. [置顶] 总结工作中常用到的linux命令
  4. 中国银屑病患者中银屑病关节炎的患病率和特征
  5. android 自定义MP4播放器
  6. android getMemoryClass()的使用
  7. Android NDK带来什么
  8. 图像抠图Image Matting算法调研
  9. python 游戏 —— 汉诺塔(Hanoita)
  10. elasticsearch不能使用root启动问题解决