我有这个Gain2
:
class
动作:
public class State{
public Dictionary<SecurityType, List<long>> assets { get; set; }
}
当我尝试传递类似这样的内容时:
[HttpPost]
public virtual ActionResult GetHoldings(State state)
{
return Json(new HoldingsBL().GetHoldings(state));
}
public enum SecuritySerachType
{
Company = 1,
Security,
}
我的资产属性词典为空。
我已经阅读了this解决方案,但是我不知道如何解决我的问题。
一些简单的解决方案?
编辑: 我尝试像Oleksii Aza所说的那样添加ValueProviderFactory,但是将它与backingStore进行比较存在一个问题(已经存在字典检查,可能是针对嵌套对象的):
{state:{assets :[{"Key":1,"Value":[]}]}}
所以我仍然坚持这个问题。
答案 0 :(得分:0)
尝试对C#字典使用类似对象的JSON结构,例如:
using System;
using System.Collections.Generic;
using Newtonsoft.Json;
public class Program
{
public enum SecuritySerachType
{
Company = 1,
Security,
}
public class State{
public Dictionary<SecuritySerachType, List<long>> assets { get; set; }
}
public static void Main()
{
var state = JsonConvert.DeserializeObject<State>(@"{assets :{""1"":[]}}");
Console.WriteLine(state.assets[SecuritySerachType.Company].Count);
}
}