将Json对象属性分配给模型

我使用动态和JObject.Parse匹配从嵌套的JSON-Object到模型类的大约90个属性:

dynamic json = JObject.Parse(JsonObjectAsString); return new Foo() { prop1 = json.summer.temperature, prop2 = json.winter.temperature, ... prop100 = json.autumn.temperature } 

这非常慢,但仅限于第一次运行 。 在第二次运行时,将获取新的JSON-Object(相同的结构但不同的值),并且可以立即将此一个JSON-Object分配给相应的模型属性。

这是为什么? 我该怎么做才能加快第一次跑步?

编辑:我已经将构建类型设置为“发布”。

您可以使用newtonsoft nuget包将JSON对象直接解析为模型。

 var objData = JsonConvert.DeserializeObject(yourjsondata); 

您可以从http://json2csharp.com/的 json数据中获取模型类

您也可以使用动态对象进行转换

 var objData = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonString); 

或者没有指定模型calss

 var objData = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonString);