在ASP.NET MVC中,我们可以使用QueryString解析查询字符串参数。如果您的查询参数是可选的,则可以使用字符串可空类型来捕获它们。
以下是示例代码:
public ActionResult MyAction(string name = null, int? age = null, string city = null) { //构建查询 var query = new StringBuilder("?");
if (!string.IsNullOrEmpty(name))
{
query.AppendFormat("name={0}&", name);
}
if (age.HasValue)
{
query.AppendFormat("age={0}&", age.Value);
}
if (!string.IsNullOrEmpty(city))
{
query.AppendFormat("city={0}&", city);
}
//发送请求
var endpoint = string.Format("http://api.example.com/myresource{0}", query.ToString().TrimEnd('&'));
var client = new HttpClient();
var result = client.GetAsync(endpoint).Result;
//处理响应
if (result.StatusCode == HttpStatusCode.OK)
{
var response = result.Content.ReadAsStringAsync().Result;
return Content(response, "application/json");
}
else
{
return new HttpStatusCodeResult(result.StatusCode);
}
}