这是项目中用于请求响应返回的类,因为成功响应和失败响应的信息不同,所以定义了两个不同的类。一个是父类,一个是子类。这样就可以实现项目要求。 代码如下:
public class PClass //父类
{
public int code { get; set; }
}
public class CommonResultModel:PClass//子类
{
public string desc { get; set; }
/// <summary>
/// 结果信息描述Code不等于0时必填。
/// </summary>
public string remark { get; set; }
}
public class MyTest
{
public string Name { get; set; }
public PClass result { get; set; } //定义类字段
}
//测试代码
MyTest model = new MyTest();
model.Name = "Test";
CommonResultModel pClass = new CommonResultModel();
pClass.code = 0;
pClass.remark = "test";
pClass.desc = "123";
model.result = pClass;
Console.WriteLine(JsonConvert.SerializeObject(model));//生成按照子类来
//如果是PClass 则按照PClass类
使用子类测试结果:
使用父类测试:
MyTest model = new MyTest();
model.Name = "Test";
PClass pClass = new PClass();
pClass.code = 0;
// // pClass.remark = "test";
// pClass.desc = "123";
model.result = pClass;
Console.WriteLine(JsonConvert.SerializeObject(model));
这样可以很灵活处理了。 补充
//父类可以接受子类,
PClass pClass = new CommonResultModel();
//但是子类不可以接受父类
//CommonResultModel son=new PClass();会报错