通过MVC中HttpClient连接WEBAPI HttpClient(不需跨域)
可以通过解决方案的属性
设置要启动的项目
(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>");
}
最后添加视图,完成视图的布局