我有的推销员
public class Salesman
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
[JsonConverter(typeof(ObjectIdConverter))]
public ObjectId Id { get; set; }
[BsonElement("complementTime")]
public DateTime ComplementTime { get; set; }
[BsonElement("futureWorker")]
public FutureWorkerInfo FutureWorker { get; set; }
}和级顾问
public class Consultant
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
[JsonConverter(typeof(ObjectIdConverter))]
public ObjectId Id { get; set; }
[BsonElement("complementTime")]
public DateTime ComplementTime { get; set; }
[BsonElement("futureWorker")]
public FutureWorkerInfo FutureWorker { get; set; }
[BsonElement("recommendedWorkers")]
public FutureWorkerInfo[] RecommendedWorkers { get; set; }
}这两个类都有
public class FutureWorkerInfo
{
[BsonElement("name")]
public string Name { get; set; }
[BsonElement("homeAddress")]
public FutureWorkerHomeAddress HomeAddress { get; set; }
[BsonElement("phone")]
public string Phone { get; set; }
[BsonElement("secondPhone")]
public string SecondPhone { get; set; }
[BsonElement("email")]
public string Email { get; set; }
[BsonElement("birthDate")]
public string BirthDate { get; set; }
}当我使用"Salesman“类时,我需要忽略字段"homeAddress”。这意味着我不需要插入或从mongo数据库中读取这个字段,而只是在Salesman中。当我使用顾问时,我应该用"homeAddress“字段来”可以“一些操作。
发布于 2016-12-28 19:20:07
您可以通过接口来完成这一任务。
创建一个ISalesmanFutureWorkInfo
public interface ISalesmanFutureWorkInfo
{
string Name { get; set; }
string Phone { get; set; }
string SecondPhone { get; set; }
string Email { get; set; }
string BirthDate { get; set; }
}创建一个具有IConsultantFutureWorkInfo并继承ISalesmanFutureWorkInfo的ISalesmanFutureWorkInfo
public interface IConsultantFutureWorkInfo : ISalesmanFutureWorkInfo
{
FutureWorkerHomeAddress HomeAddress { get; set; }
}更改类以使用接口。
public class Consultant
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
[JsonConverter(typeof(ObjectIdConverter))]
public ObjectId Id { get; set; }
[BsonElement("complementTime")]
public DateTime ComplementTime { get; set; }
[BsonElement("futureWorker")]
public IConsultantFutureWorkInfo FutureWorker { get; set; }
[BsonElement("recommendedWorkers")]
public IConsultantFutureWorkInfo[] RecommendedWorkers { get; set; }
}
public class Salesman
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
[JsonConverter(typeof(ObjectIdConverter))]
public ObjectId Id { get; set; }
[BsonElement("complementTime")]
public DateTime ComplementTime { get; set; }
[BsonElement("futureWorker")]
public ISalesmanFutureWorkInfo FutureWorker { get; set; }
}https://stackoverflow.com/questions/41367307
复制相似问题