MVVM新增
开发工具与关键技术:Visual Studio
撰写时间:2021年5月8日
现在说一下mvvm的新增
结构是:Model 、View 、ViewModel
如下图所示,就是要新增的数据页面,首先就是页面View
然后是创建与页面对应的ViewModel,在建好的ViewModel里面写好如下图,好方便分类代码,其次把model实例化出来。
再到View这边点击查看代码,把创建对应的ViewModel new出来,用到传输数据
ViewModel分类属性 S_PatientData要新增的病人表
写一个命令
新增保存代码,
///
/// 保存-新增病人信息
///
///
public void SavePatientData(UserControl uc)
{
S_PatientData PatientDataS = new S_PatientData()
{
MedicineId=IsPatientData.MedicineId,
//证件类型id
DocumentTypeId=IsPatientData.DocumentTypeId,
PatientTypeId = IsPatientData.PatientTypeId,
PatientCard = IsPatientData.PatientCard,
PatientName = IsPatientData.PatientName,
PatientPhone = IsPatientData.PatientPhone,
//性别
PatientSex = IsPatientData.PatientSex,
PatientBirthday = IsPatientData.PatientBirthday,
PatientProfessional = IsPatientData.PatientProfessional,
SicknessCertificate = IsPatientData.SicknessCertificate,
PatientAddress = IsPatientData.PatientAddress,
IsNational = IsPatientData.IsNational,
Ountries = IsPatientData.Ountries,
PatientHeight = IsPatientData.PatientHeight,
PatientWeight = IsPatientData.PatientWeight,
StaffOfThisHospital = IsPatientData.StaffOfThisHospital,
IdCard=IsPatientData.IdCard,
SystemDetialId=IsPatientData.SystemDetialId,
};
if (PatientDataS.PatientCard != string.Empty&& PatientDataS.PatientName!=string.Empty
&& PatientDataS.PatientBirthday!=null&& PatientDataS.PatientTypeId !=null
&& PatientDataS.PatientAddress!=string.Empty)
{
//比较 是否重复
var PatientDataCount = mymodels.S_PatientData.Where
(m => m.PatientCard == IsPatientData.PatientCard.Trim() && m.PatientId != IsPatientData.PatientId).ToList().Count();
if (PatientDataCount > 0)
{
MessageBox.Show("数据重复啦", "系统提示", MessageBoxButton.OK, MessageBoxImage.Stop);
}
else
{
mymodels.S_PatientData.Add(PatientDataS);
if (mymodels.SaveChanges() > 0)
{
MessageBox.Show("保存成功辽!", "系统提示", MessageBoxButton.OK, MessageBoxImage.Information);
}
else
{
MessageBox.Show("保存失败了!", "不行!", MessageBoxButton.OK, MessageBoxImage.Stop);
}
}
}
else
{
MessageBox.Show("标识*符号的数据不能为空!", "系统提示!", MessageBoxButton.OK, MessageBoxImage.Stop);
}
}
再后就是方法给到命令
最后页面上绑定命令
新增完成。