好的,这是我要解决的问题 - 我想将通过 linq 从 db 返回的对象属性分配给该对象 prperties 并获得更新任何更改的可能性,而无需在 db 中插入新行。
partial class Employee : Person
{
public Employee(int id = 0)
{
if (id > 0)
this.get(id);
}
public override bool get(int id)
{
Employee empl = db.Employees.Single(Employee => Employee.id == id);
if (empl != null)
{
// here I need to do sth like
this = empl;
// or
ObjectProperties.Copy(empl, this);
return true;
}
else
return false;
}
public override void save()
{
if (this.id > 0)
{
db.SubmitChanges();
}
else
{
db.Employees.InsertOnSubmit(this);
db.SubmitChanges();
}
}
public override void remove()
{
if (this.id > 0)
{
db.Employees.DeleteOnSubmit(this);
db.SubmitChanges();
}
}
}
而且我不想让 get 方法成为静态的。