Cson请求太大而无法反序列化C# [英] The json request was too large to be deserialized C#
本文介绍了Cson请求太大而无法反序列化C#的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在不使用它的情况下反序列化大型json文件:
I wanted to deserialized large json file without using this :
<appSettings>
<add key="aspnet:MaxJsonDeserializerMembers" value="150000" />
</appSettings>
因为它会影响整个项目ct ..
我只是想为了安全而采取行动..
我尝试过:
这是我的代码:
at the web.config because it will affect the entire project..
I just wanted to put it per action to be safe..
What I have tried:
Here is my code:
public IEnumerable<PricingVehicleEquipmentsOptionModelDto> GetFactoryOptions(long vehicleId)
{
var optionalequips = new List<PricingVehicleEquipmentsOptionModelDto>();
var optionEquipmentJson = _dbContext.IVehicleOptions.FirstOrDefault(o => o.Name == "Optional_Equipment" & o.IVehicleId == vehicleId);
var vehicle = _dbContext.IVehicles.FirstOrDefault(o => o.Id == vehicleId);
var optionEquipments = optionEquipmentJson != null ? JsonConvert.DeserializeObject<List<PricingVehicleEquipmentsOptionModelDto>>(optionEquipmentJson.OptionCodes) : null;
var style = optionEquipments.Select(o => new PricingVehicleEquipmentsOptionModelDto
{
TypeId = o.TypeId,
TypeName = o.TypeName,
Description = o.Description,
oemCode = o.oemCode != null ? o.oemCode : o.chromeCode,
IsApplied = o.IsApplied,
StyleIds = o.StyleIds
});
foreach(var s in style)
{
var optionStyle = s.StyleIds.Any(d => d.ToString() == vehicle.S_StyleId);
if(optionStyle)
{
optionalequips.Add(s);
}
};
return optionalequips;
}
推荐答案
此链接将向您展示如何使用大型JSON文件:c# - 在.NET中解析大型json文件 - Stack Overflow [ ^ ]
This link will show you how to work with large JSON files: c# - Parsing large json file in .NET - Stack Overflow[^]
这篇关于Cson请求太大而无法反序列化C#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文