【发布时间】:2015-09-01 15:22:46
【问题描述】:
我有 2 个模型对象:
public class Setting
{
public Guid Id { get; set; }
public bool Value { get; set; }
}
public class SettingItem : Setting
{
public string Description { get; set; }
}
当我从服务器执行 Get 操作时,我得到了用来绑定到 UI 的 SettingItem(带有描述)。在保存时,我想序列化设置(没有描述)以返回服务器。为此,我尝试创建一个 Setting 类型的新对象并使用来自 SettingItem 的数据填充它,但我的新对象不是 Setting 类型,而是 SettingItem:
IEnumerable<Setting> settings = new List<Setting>(_settingItems);
我唯一能做的就是这种转换,它违背了继承的意图:
var settings = _settingItems.Select(n => new NotificationSettingInput()
{
NotifyTypeId = n.NotifyTypeId,
IsOptedIn = n.IsOptedIn
});
【问题讨论】: