一、HttpClient连接WEBAPI(添加)

通过MVC中HttpClient连接WEBAPI HttpClient(不需跨域)

可以通过解决方案的属性

一、HttpClient连接WEBAPI(添加)

设置要启动的项目

(Api中没有做出太大的改变)

1、添加

单表的添加和平时一样

但是两表的添加时需要进行两次的添加,如果有主外键关系,则需要先执行次表,获取外键,再给主表的外键赋值,这样主表和次表就可以关联了

例如:

var userInfo =  db.InfoModels.Add(info);
              db.SaveChanges();

              card.IId = userInfo.IId;

              db.Cards.Add(card);
              //事务(同时成功或成时失败)
              return db.SaveChanges();

Api的添加在控制器中设置默认值,像实例化表,再给各个字段赋值,最后返回值数量得和表的数量一直

例如:

Card card = new Card();
              card.Dengji = "白金会员";
              card.Biaoqian = "无";
              card.Jifne = 300; //默认积分
              card.Ci = 4; //默认4 次
              card.Money = 2000; //下单金额
              card.Fufei = true; //是否付费
              card.YuE = 1000; //卡内余额

              return Json(bll.AddInfo(info, card));

在Mvc中需要先赋值Api的地址,然后调用WEBAPI的方法,然后判断屎都响应,如果响应,测成功,未响应,则失败。最后通过返回的数值来判断是否添加成功。

例如:

//实例化
          HttpClient client = new HttpClient();
          //赋值API地址
          client.BaseAddress = new Uri(BaseUrl);
          //完成调用WEBAPI AddUserInfo 的方法
          var result = client.PostAsJsonAsync("AddUserInfo", infoModel).Result;   //.Content.ReadAsStringAsync().Result;
          //请求是否成功 成功 200
          if (result.IsSuccessStatusCode)
          {
              var flag = result.Content.ReadAsStringAsync().Result;
              if (Convert.ToInt32(flag) > 0)
              {
                  return Content("<script>alert('添加成功')</script>");
              }
              else
              {
                  return Content("<script>alert('添加失败')</script>");
              }
          }
          else
          {
              return Content("<script>alert('HTTP响应失败')</script>");
          }

最后添加视图,完成视图的布局

上一篇:多线程学习


下一篇:Codelabs 之 时钟FA卡片开发样例 实践