Сделать генерацию исключения во время десериализации json - C#
Формулировка задачи:
Здравствуйте
Есть такой класс:
И такой json:
Что нужно сделать, чтобы во время десериализации выскакивал exception, гооворящий что в json-е нету поля intField?
class Message {
public int intField;
}{}Решение задачи: «Сделать генерацию исключения во время десериализации json»
textual
Листинг программы
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json.Schema;
public class Program
{
public static void Main(string[] args)
{
string json = @"{}";
var message = DeserializeFromJson<Message>(json);
}
static T DeserializeFromJson<T>(string json)
{
var schemaGenerator = new JsonSchemaGenerator();
var typeSchema = schemaGenerator.Generate(typeof (T));
var jObject = JObject.Parse(json);
if (!jObject.IsValid(typeSchema))
throw new JsonSchemaException("Json doesn't match to class schema");
return JsonConvert.DeserializeObject<T>(json);
}
class Message
{
public int intField;
}
}