我想通过 json.net 序列化这段代码:
public interface ITestInterface
{
string Guid {get;set;}
}
public class TestClassThatImplementsTestInterface1
{
public string Guid { get;set; }
}
public class TestClassThatImplementsTestInterface2
{
public string Guid { get;set; }
}
public class ClassToSerializeViaJson
{
public ClassToSerializeViaJson()
{
this.CollectionToSerialize = new List<ITestInterface>();
this.CollectionToSerialize.add( new TestClassThatImplementsTestInterface2() );
this.CollectionToSerialize.add( new TestClassThatImplementsTestInterface2() );
}
List<ITestInterface> CollectionToSerialize { get;set; }
}
我想用 json.net 序列化/反序列化 ClassToSerializeViaJson。序列化正在工作,但反序列化给了我这个错误:
Newtonsoft.Json.JsonSerializationException:无法创建 ITestInterface 类型的实例。类型是接口或抽象类,不能实例化。
那么如何反序列化List<ITestInterface>
集合呢?