300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > asp.net MVC中实现调取web api

asp.net MVC中实现调取web api

时间:2022-07-10 08:23:42

相关推荐

asp.net MVC中实现调取web api

1 public ActionResult Index(string city) 2 { 3 4 5 if (string.IsNullOrEmpty(city)) 6 { 7 city = "上海"; 8 } 9 //ak需要自己到百度地图官网申请 10 Uri weatherInfo = new Uri("http://api./telematics/v3/weather?location=" + city + "&output=json&ak=UKMGHnstHCOFzYBe2h70gi5fLsc0C0dG"); 11 12 HttpWebRequest request = WebRequest.Create(weatherInfo) as HttpWebRequest; 13 List<WeatherData> weatherDataList = new List<WeatherData>(); 14 15 using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) 16 { 17 // Get the response stream 18 StreamReader reader = new StreamReader(response.GetResponseStream()); 19 string json = reader.ReadToEnd(); 20 21 Weather model = JsonHelper.JsonToEntity<Weather>(json); 22 List<WeatherDto> weatherDtoList = new List<WeatherDto>(); 23 List<Index> indexList = new List<Index>(); 24 25 foreach (WeatherResult result in model.Results) 26 { 27 indexList = result.Index; 28 weatherDataList = result.Weather_Data; 29 } 30 for (int i = 0; i < indexList.Count; i++) 31 { 32 WeatherDto weatherDto = new WeatherDto(); 33 weatherDto.Des = indexList[i].Des; 34 weatherDto.Tipt = indexList[i].Tipt; 35 weatherDto.Title = indexList[i].Title; 36 weatherDto.Zs = indexList[i].Zs; 37 38 if (i < weatherDataList.Count) 39 { 40weatherDto.Date = weatherDataList[i].Date; 41weatherDto.DayPictureUrl = weatherDataList[i].DayPictureUrl; 42weatherDto.NightPictureUrl = weatherDataList[i].NightPictureUrl; 43weatherDto.Temperature = weatherDataList[i].Temperature; 44weatherDto.Weather = weatherDataList[i].Weather; 45weatherDto.Wind = weatherDataList[i].Wind; 46 47 } 48 weatherDtoList.Add(weatherDto); 49 } 50 } 51 52 return View("NewView",weatherDataList); 53 } 54 55} 56 57 public class WeatherDto 58{ 59 public string Title { get; set; } 60 61 public string Zs { get; set; } 62 63 public string Tipt { get; set; } 64 65 public string Des { get; set; } 66 67 public string Date { get; set; } 68 69 public string DayPictureUrl { get; set; } 70 71 public string NightPictureUrl { get; set; } 72 73 public string Weather { get; set; } 74 75 public string Wind { get; set; } 76 77 public string Temperature { get; set; } 78} 79 80 81 public class Weather 82{ 83 public string Error { get; set; } 84 85 public string Status { get; set; } 86 87 public string Date { get; set; } 88 89 public List<WeatherResult> Results { get; set; } 90} 91 92 public class WeatherResult 93{ 94 public string CurrentCity { get; set; } 95 96 public string Pm25 { get; set; } 97 98 public List<Index> Index { get; set; } 99 100 public List<WeatherData> Weather_Data { get; set; }101}

1 @model IEnumerable<MvcAjaxTest.Models.WeatherData> 2 3 @{ 4Layout = null; 5 } 6 7 <html> 8 <head> 9<title>weather</title> 10<link rel="shortcut icon" href="/t0158c24c5ddb3a6745.png" type="image/x-icon"> 11<link rel="stylesheet" href="~/Content/css/Weather.css" /> 12<style type="text/css"> 13 #weathertype { 14 font-size: 28px; 15 padding-left: 20px; 16 } 17 18 #copyright { 19 padding: 40px 0; 20 text-align: center; 21 line-height: 2; 22 color: #999; 23 } 24 25 .btn-app { 26 background: url(/t017399c8595fd6cc76.png) no-repeat 0 0; 27 } 28 29 .skinmore, .skinmore2 { 30 z-index: -1; 31 } 32 33 .skin2 .skinmore2 { 34 background: url(/t0191e46e3e10bc96e3.png) repeat center 0; 35 height: 100%; 36 left: 0; 37 position: absolute; 38 top: 0; 39 width: 100%; 40 } 41 42 .qrcodes img { 43 margin-top: 40px; 44 } 45 46 .qrcodes { 47 position: absolute; 48 top: 150px; 49 width: 200px; 50 right: 2%; 51 } 52 53 .header { 54 height: 110px; 55 } 56 57 .logo { 58 background: url(/t01c2da4dacc6c6dee8.png) no-repeat; 59 background-image: -webkit-image-set(url(/t01c2da4dacc6c6dee8.png) 1x,url(/t01ea0b4aedd360d174.png) 2x); 60 float: left; 61 height: 65px; 62 margin-top: 35px; 63 width: 183px; 64 } 65 66 .search { 67 margin-top: 20px; 68 } 69</style> 70<script type="text/javascript" src="~/Scripts/jquery-1.8.2.js"></script> 71<script type="text/javascript"> 72 function Change() { 73 var citySelected = $("#GetCity option:selected").text(); 74 $.ajax({ 75 type: "Post", 76 url: "Weather/Index", 77 data: { City: citySelected }, 78 success: function (data) { 79 $("#partRefresh").html(data); 80 }, 81 error: function () { 82 alert("请求失败,请稍候再试..."); 83 } 84 }); 85 } 86 87</script> 88 89 </head> 90 <body class="skin6" style="display: block;"> 91<div> 92 <select id="GetCity" οnchange="Change()"> 93 <option value="1" selected="selected">上海市</option> 94 <option value="2">合肥市</option> 95 <option value="3">牡丹江市</option> 96 <option>湖州市</option> 97 <option>海口市</option> 98 </select> 99</div>100<div class="morewether" id="partRefresh">101 <!--各天气对应中文拼音如icon-yewanqing对应“夜晚晴“ -->102 <ul id="foreast">103 <li>104 <p class="colora">@Model.ToList()[0].Date</p>105 <p class="icon-tu"><i class="icon-qing"></i><br>@Model.ToList()[0].Weather</p>106 <p class="otherinfo"><span>@Model.ToList()[0].Temperature</span>@Model.ToList()[0].Wind</p>107 </li>108 <li>109 <p class="colora">@Model.ToList()[1].Date</p>110 <p class="icon-tu"><i class="icon-shachen"></i><br>@Model.ToList()[1].Weather</p>111 <p class="otherinfo"><span>@Model.ToList()[1].Temperature</span>@Model.ToList()[1].Wind</p>112 </li>113 <li>114 <p class="colora">@Model.ToList()[2].Date</p>115 <p class="icon-tu"><i class="icon-shachen"></i><br>@Model.ToList()[2].Weather</p>116 <p class="otherinfo"><span>@Model.ToList()[2].Temperature</span>@Model.ToList()[2].Wind</p>117 </li>118 <li>119 <p class="colora">@Model.ToList()[3].Date</p>120 <p class="icon-tu"><i class="icon-shachen"></i><br>@Model.ToList()[3].Weather</p>121 <p class="otherinfo"><span>@Model.ToList()[3].Temperature</span>@Model.ToList()[3].Wind</p>122 </li>123 </ul>124</div>125 </body>126 </html>

效果图:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。