有没有办法在没有自定义模型绑定的情况下处理这个问题?
public class MyViewModel {
public string UserId { get; set; }
public IJob Job { get; set; }
}
public interface IJob {
public long Id { get; set; }
public string CompanyName { get; set; }
}
public class FullTimeJob : IJob {
// omitted for brevity
}
public class Internship : IJob {
// omitted for brevity
}
我遇到的问题是默认模型绑定器中出现错误,因为它不了解要实例化的 IJob 实现。当我创建 MyViewModel 时,我将 FullTimeJob 的一个实例设置到它的 Job 属性中。我猜 ASP.NET 不能保留实现类型?
对此的最佳实践解决方案是什么?