创建mvc项目
创建两个方法,用于进行get和post异步访问api
//get public Success GetSuccess(string url) { HttpClient http = new HttpClient(); //进行异步请求 Task<string> task = http.GetStringAsync(url); //获取返回数据 string result = task.Result; return JsonConvert.DeserializeObject<Success>(result); } //post public Success PostSuccess(string url) { HttpClient http = new HttpClient(); var str = "";//请求数据。这里为空 HttpContent content = new StringContent(str); Task<HttpResponseMessage> postTask = http.PostAsync(url, content); HttpResponseMessage result = postTask.Result;//拿到网络请求结果 result.EnsureSuccessStatusCode();//抛出异常 Task<string> task = result.Content.ReadAsStringAsync();//异步读取数据 //发送值前台 return JsonConvert.DeserializeObject<Success>(task.Result); }
查询
public ActionResult Index() { string url = "http://localhost:61840/api/Test/GetInfo"; Success success = GetSuccess(url); //请求成功 if (success.code == 200) { ViewBag.message = success.message; ViewBag.lists = success.result; } return View(); }
页面
<hr /> <a href="~/Home/AddPage">添加</a> <table class="table table-bordered table-hover"> <tr> <th>编号</th> <th>创建时间</th> <th>昵称</th> <th>简介</th> <th>操作</th> </tr> @foreach (var item in ViewBag.lists) { <tr> <td>@item.id</td> <td>@item.createDate</td> <td>@item.nickName</td> <td>@item.introduce</td> <td> <a href="~/Home/DeleteById?id=@item.id" class="btn btn-primary" onclick="return confirm('是否删除此行?')">删除</a> <a href="~/Home/UpdatePage?id=@item.id" class="btn btn-primary">修改</a> </td> </tr> } </table>
删除
public void DeleteById(string id) { string url = "http://localhost:61840/api/Test/DeleteById?id=" + id; Success success = PostSuccess(url); if (success.code==200) { Response.Write("<script>alert('" + success.message + "');window.location.href='Index'</script>"); } }
添加
public ActionResult AddPage() { return View(); }
public void AddInfo(string nickName, string introduce) { string url = $"http://localhost:61840/api/Test/AddInfo?nickName={nickName}&introduce={introduce}"; Success success = PostSuccess(url); if (success.code == 200) { Response.Write("<script>alert('" + success.message + "');window.location.href='Index'</script>"); } else { Response.Write("<script>alert('" + success.message + "');window.location.href='AddPage'</script>"); } }
页面
<h2>添加数据</h2> <form action="~/Home/AddInfo" method="post"> <p> 昵称:<input type="text" name="nickName" placeholder="请输入昵称" /> </p> <p> 简介:<input type="text" name="introduce" placeholder="请输入简介" /> </p> <p> <input type="submit" value="提交" /> </p> </form>
修改
[HttpPost] public void UpdateById(string id,string nickName,string introduce) { string url = $"http://localhost:61840/api/Test/UpdateById?id={id}&nickName={nickName}&introduce={introduce}"; Success success = PostSuccess(url); if (success.code == 200) { Response.Write("<script>alert('" + success.message + "');window.location.href='Index'</script>"); } else { Response.Write("<script>alert('" + success.message + "');window.location.href='UpdatePage'</script>"); } }
public ActionResult UpdatePage(string id) { string url = "http://localhost:61840/api/Test/SelectById?id=" + id; Success success = GetSuccess(url); //请求成功 if (success.code == 200) { ViewBag.message = success.message; ViewBag.gird = success.result; } return View(); }
页面
<h2>修改数据</h2> <form action="~/Home/UpdateById" method="post"> <p> 编号:<input type="text" name="id" readonly="readonly" value="@ViewBag.gird.id" /> </p> <p> 创建时间:<input type="text" name="createDate" readonly="readonly" value="@ViewBag.gird.createDate" /> </p> <p> 昵称:<input type="text" name="nickName" placeholder="请输入昵称" value="@ViewBag.gird.nickName" /> </p> <p> 简介:<input type="text" name="introduce" placeholder="请输入简介" value="@ViewBag.gird.introduce" /> </p> <p> <input type="submit" value="提交" /> </p> </form>