Ada*_*itt 7 c# asp.net asp.net-mvc-4 asp.net-mvc-viewmodel
有没有办法在没有自定义模型绑定的情况下处理这个问题?
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
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是我在默认模型绑定器中遇到错误,因为它不了解实例化IJob的实现.当我创建MyViewModel时,我将FullTimeJob的实例设置为其Job属性.我猜ASP.NET不能保留实现类型?
什么是最佳实践解决方案?
视图只是 UI 和控制器之间的数据载体。因此,您只需将 Id 和 CompanyName 属性添加到您的视图中即可。因为您想要做的就是从 UI 获取 Id 和公司值。从 UI 获取数据时,是实习还是全职工作可能并不重要。当您处理从 UI 获取的数据时,这可能很重要,但这不是 View 的责任。
| 归档时间: |
|
| 查看次数: |
1337 次 |
| 最近记录: |