【发布时间】:2021-10-05 07:55:07
【问题描述】:
当我尝试使用 `System.Text.Json JsonSerializer` 进行反序列化时,出现与安全性相关的错误。
-
我想实现什么?
我想让用户控制我的数据库中的一些记录,所以使用可以遵循这个场景:1- 用户可以选择我的类库的模型。
2- 选择一个类后,用户将从该类中选择一个属性(归档)。
3-用户将获得所选属性的值列表。
4- 最后一步现在不在这里,用户可以编辑一个特定的值。
这是我的一段代码:
-
MyPage.razor.cs:
[Inject] private IGenericHttpClient<Type> HttpClient { get; set; } private Type SelectedType { get; set; } // First select a class [Class library] from HTML Select private void OnTypeChnage(ChangeEventArgs args) { string FullName = "My.Models." + args.Value.ToString(); // Create type of selected class SelectedType = Assemble.GetType(FullName, false); } //Call api to get all fields of this class private async Task OnPropertChange(ChangeEventArgs args) { var list = await HttpClient.GetJsonAsync($"/api/{SelectedType.Name}/all"); } -
GenericHttpClient.cs
public async ValueTask<List<T>> GetJsonAsync(string url) { using HttpResponseMessage response = await _client.GetAsync(url); ValidateResponse(response); var conetnt = await response.Content.ReadAsStringAsync(); //I got the error down return JsonSerializer.Deserialize<List<T>>(conetnt, new JsonSerializerOptions() { PropertyNameCaseInsensitive=true}); }
【问题讨论】:
标签: c# asp.net-core blazor system.text.json