我正在尝试构建预算最多的 ORM。
我有 2 个对象,一个“项目”和一个“原始”,在创建项目时,我只需将其副本保存在一个名为“原始”的变量中。该副本是通过我从这篇文章中窃取的扩展创建的https://stackoverflow.com/a/11308879/10647851
所以我想构建我的更新查询,我认为非常简单。
foreach (PropertyInfo prop in properties) {
var one = prop.GetValue(original, null);
var typeOne = one.GetType();
var two = prop.GetValue(item, null);
var typeTwo = two.GetType();
if(one != two) { ... }
}
然而,在某些您意想不到的情况下,一不等于二。
ID(模型中的类型= int?)2703不等于2703。我单步执行代码,类型是Int32。布尔值也是问题。字符串起作用。日期时间?的工作。
凤凰求蛊
相关分类