【发布时间】:2018-04-26 10:27:12
【问题描述】:
我一直在尝试掌握 C#/.NET 和 UWP 应用程序。目前我正在尝试关注this guide 来完成对我的数据库的CRUD 操作。到目前为止一切都很好,但是当我来到我想要创建的部分时,我遇到了一些麻烦。下面的代码是我创建一个新对象并尝试将其发布到数据库的地方。在这种情况下,作品就是一本书。
var newPiece = new Piece
{
PieceTitle = Title.Text,
PieceAuthor = Author.Text,
PieceIsbn = Isbn.Text,
PieceDescription = Description.Text
};
using (var client = new HttpClient())
{
var content = JsonConvert.SerializeObject(newPiece);
Task task = Task.Run(async () =>
{
var data = new HttpFormUrlEncodedContent(
new Dictionary<string, string>
{
["value"] = content
});
await client.PostAsync(App.BaseUri, data);
});
task.Wait();
}
这里的问题是因为我同时使用HttpClient() 和HttpFormUrlEncodedContent() VS 告诉我HttpClient() 是“一个模棱两可的引用”,我需要指定它是属于System.Net.Http; 还是@987654327 @。如果我选择 System.Net.Http,那么它会告诉我 PostAsync() 中的参数 1“无法从 'System.Uri' 转换为 'string'”,并且参数 2“无法转换从 'Windows.Web.Http.HttpFormUrlEncodedContent' 到 'System.Net.Http.HttpContent'"
如果我尝试让HttpClient() 使用Windows.Web.Http;,那么它在编译时不会给我任何错误,但是在创建并发布对象后,它在我的表中显示为 null。
【问题讨论】:
标签: c# uwp dotnet-httpclient