[英]How to run asynchronous methods inside my ActionResult in MVC, c#
我正在从网络服务获取数据。这需要一些时间。 这是我的controller
{
// THERE SO MANY FUNCTIONS BEFORE THIS.
//
try
{
string serviceUrl = "https://www.myserviceweb.com/assets/webhandler/details.ashx";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(serviceUrl);
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
string result = sr.ReadToEnd();
sr.Close();
var rootResult = XElement.Parse(result);
System.Web.HttpContext.Current.Session["rootvss"] = rootResult;
}
catch (Exception ex)
{
Debug.WriteLine("error");
}
return View();
}
在我调用这个函数之前,有很多函数。 所以总的来说加载索引需要更多时间。我想做的是
仅异步运行上述函数。 我怎样才能做到这一点。 我尝试使用如下方法。但我不知道如何使用它。
public async Task webservce()
{
}
希望您对此有所帮助
如果你想使用 Async ,结构如下:
public async Task<ActionResult> webservce()
{
return await _yourService.GetAllAsync(); // here you should call Async Methods like .ToListAsync ,...
}
所有在 msdn 上都有解释: https : //msdn.microsoft.com/en-us/library/hh300224.aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.