在Asp.Net Core中,可以使用Url.Action方法生成WebApi控制器的URL。以下是一个示例解决方法:
using Microsoft.AspNetCore.Mvc;
public class HomeController : Controller
{
public IActionResult Index()
{
// 生成WebApi控制器的URL
string url = Url.Action("ActionName", "ControllerName");
// 其他代码...
return View();
}
}
using System.Net.Http;
public class HomeController : Controller
{
private readonly HttpClient _httpClient;
public HomeController(HttpClient httpClient)
{
_httpClient = httpClient;
}
public async Task Index()
{
string url = Url.Action("ActionName", "ControllerName");
// 发送WebApi请求
HttpResponseMessage response = await _httpClient.GetAsync(url);
response.EnsureSuccessStatusCode();
// 处理响应...
return View();
}
}
注意:在上面的示例中,你需要将"ActionName"替换为你WebApi控制器中的实际Action方法名称,将"ControllerName"替换为你WebApi控制器的名称。