在这里使用vb.net,但我确定C#适用
我有一个视图模型BaseViewModel
,其中包含一个包含的子视图模型列表ChildViewModel
。 ChildViewModel
映射回ChildClass
,BaseViewModel
映射回BaseClass
。
所有这些类都受接口保护。
假设用户使用用户界面创建新的BaseViewModel
,用户就会在其中添加2 ChildViewModels
。当用户单击“保存”时,我可以循环浏览这些ChildViewModels
并在每个UpdateModel
上调用ChildClass
,以便将属性映射回我的基类。但是,如果BaseClass
上的ChildViewModels
列表不足以容纳新UpdateModel
,则会出现超出范围的异常。
BaseViewModel
Friend Sub UpdateModel(bc as BaseClass)
For Each item in ListOfChildViewModels
Dim updateMe = bc.ListOfChildClasses.FirstOrDefault(Function(r) r.Id = role.Id)
If updateMe Is Nothing Or role.Id = 0 Then
''Add a new role
Else
item.UpdateModel(bc.ListOfChildClasses)
Next
End Sub
// KitKat and higher require the extra step of importing to the cache then moving
if (Util.hasKitkat())
{
File tmp = new File(getExternalCacheDir(), name);
mMtpDevice.importFile(objectHandle, tmp.getPath());
success = FileUtil.moveFile(CameraImportActivity.this, tmp, endFile);
}
else
{
success = mMtpDevice.importFile(objectHandle, endFile.getPath());
}
谁可以解释我做错了什么以及如何在这里添加新角色