我需要获得JSON
{
"question":"q1",
"answers": {
1:"ans1",
2:"ans2",
3:"ans3"
}
"corr":[1,2]
}
此表达式包含LINQ
JObject jsonContent =
new JObject(
new JProperty("question", _question),
new JProperty("answers",
new JObject(
from ans in _answers
select new JProperty (ans.Key.ToString(),ans.Value))),
new JProperty("corr",
new JArray(
from ans in _correctAnswers
select ans)));
,其中
string _question;
List<int> _correctAnswers;
Dictionary<int, string> _answers;
我将Dictionary转换为JProperty时遇到问题
System.ArgumentNullException: Value cannot be null.
Parameter name: source
UPD:设置所有值。没有空答案
UPD2:抱歉。一切正常。问题出在数据库访问层
答案 0 :(得分:0)
看起来字典中的答案可能是空的
尝试:
select new JProperty (ans.Key.ToString(),ans.Value ?? string.Empty)