C# mvc 自定义JsonValueProviderFactory 反序列化自定义对象问题

wangjia1991 2019-05-05 12:10:25
由于其他的方法,提交json字符串太大,使用JsonValueProviderFactory一个类继承ValueProviderFactory

重写:
public override IValueProvider GetValueProvider(ControllerContext controllerContext)
{
if (controllerContext == null)
throw new ArgumentNullException("controllerContext");

if (!controllerContext.HttpContext.Request.ContentType.StartsWith("application/json", StringComparison.OrdinalIgnoreCase))
return null;
var reader = new StreamReader(controllerContext.HttpContext.Request.InputStream);
var bodyText = reader.ReadToEnd();

return string.IsNullOrEmpty(bodyText) ? null : new DictionaryValueProvider<object>(JsonConvert.DeserializeObject<ExpandoObject>(bodyText, new ExpandoObjectConverter()), CultureInfo.CurrentCulture);
}


[HttpPost]
public ActionResult GetPage(PageCondition pageCondition)
{
var data = UserService.Instance.GetPage(pageCondition);

var result = data == null ? null : new EasyPageResult
{
total = data.Item1,
rows = data.Item2
};

return GetEasyPageResult(result);
}

bodyText:{"pageCondition":{"Condition":{"Sorting":[],"Filters":[]},"PageFilter":{"CurrentIndex":1,"PageSize":15}}}
pageCondition 是null,请教各位指点指点
...全文
218 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
丰云 2019-05-05
  • 打赏
  • 举报
回复
把id用某特定符号连接成字符串,post提交,后台再split
wangjia1991 2019-05-05
  • 打赏
  • 举报
回复
有个页面,选择1000条记录,传 id集合,json过大,如何解决
丰云 2019-05-05
  • 打赏
  • 举报
回复
看到这些自以为是的封装,就头疼。。。。 明明mvc都提供了原生的支持,非要自己写一套,还一堆毛病。。。。

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧