【发布时间】:2025-12-26 15:35:17
【问题描述】:
我需要通过控制台应用程序与 Web api 进行通信。
api 需要像这样传递给它的两个变量/参数:
[HttpPost("api/loans/range/enroll/{loanStart}/{loanEnd}")]
public IActionResult PostLoanData(DateTime loanStart, DateTime loanEnd)
{
Loans.CreateLoanDates(loanStart, loanEnd);
return NoContent();
}
所以在我的主要方法中,我做了这样的事情:
static void Main(string[] args)
{
var LoanDateRange = new Dictionary<string, string>
{
{"loanStart", startDate.ToString()},
{"loanEnd", endDate.ToString()}
};
var json = JsonConvert.SerializeObject(LoanDateRange);
HttpClient client = new HttpClient();
client.PostAsync("http://mybank1.com/api/loans/range/enroll", new StringContent(json, Encoding.UTF8, "application/json"))
.ContinueWith(task => {
var response = task.Result;
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
});
Console.ReadLine();
}
当我运行程序时,我得到一个空异常。
如何从控制台应用程序中为 api 提供所需的内容?或者,我可以更改 api 以便它可以更好地与控制台应用程序交互吗?
谢谢!
【问题讨论】:
-
你的 startDate/endDate 在哪里初始化???
标签: c# c#-4.0 asp.net-core asp.net-web-api2