使用mvc我得到这样的值,以避免类声明和路由器更改。
public dynamic Create([FromBody] dynamic form)
{
var username = form["username"].Value;
var password = form["password"].Value;
var firstname = form["firstname"].Value;
...
我喜欢遍历所有值并检查它们是否为null或空。
答案 0 :(得分:15)
好吧,如果你从参数中得到一个json,你可以将对象转换为字典,对于样本:
var d = JsonConvert.DeserializeObject<Dictionary<string, dynamic>>(form);
var username = d["username"];
你也可以在键之间循环:
foreach(var key in d.Keys)
{
// check if the value is not null or empty.
if (!string.IsNullOrEmpty(d[key]))
{
// code
}
}
答案 1 :(得分:4)
这是相当古老的,但我偶然发现了这一点,我想知道为什么没有提出以下内容:
In [77]: np.column_stack(( a, _ ))
Out[77]:
array([[ 0.76 , 1.28947368, 1. ],
[ 0.68 , 1.41176471, 2. ],
[ 0.68 , 1.41176471, 2. ],
[ 0.68 , 1.44117647, 3. ],
[ 0.66 , 1.09090909, 4. ],
[ 0.66 , 1.15151515, 5. ],
[ 0.66 , 1.15151515, 5. ],
[ 0.66 , 1.24242424, 6. ]])
答案 2 :(得分:1)
您可以使用JavaScriptSerializer和动态对象:
JavaScriptSerializer serializer = new JavaScriptSerializer();
dynamic myDynamicObject = serializer.DeserializeObject(json);
例如,如果您想循环遍历myDynamicObject["users"]
:
foreach (KeyValuePair<string, dynamic> user in myDynamicObject["users"]){
Console.WriteLine(user.Key+": "+user.Value["username"]);
Console.WriteLine(user.Key+": "+user.Value["email"]);
}