public class Employee
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public int DesignationID { get; set; }
**public virtual Designation Designation { get; set; }**
}
上下文類使用虛擬財產的模型類在MVC
public class DataClass : DbContext
{
public DbSet<Employee> Employee{ get; set; }
public DbSet<Designation> Designation { get; set; }
}
ViewModelClass
public class Class3
{
public Employee Employee{ get; set; }
public Designation Designation { get; set; }
}
查詢: -
(from emp in dc.Employee
join designation in dc.Designation
on emp.DesignationID equals designation.DesignationID
select new Class3
{
Employee = emp ,
Designation = designation,
}).Single();
如果你看看員工的類屬性
public virtual Designation Designation { get; set; }
此屬性是沒有用的,甚至當我刪除這個屬性,代碼工作
是我的做法是正確的?因爲互聯網上的每一個例子定義此屬性,但在我的情況下,它是沒有用的,我覺得這些都是投影的目的,但並不瞭解其作用機理
感謝
'虛擬'用於實現一個屬性/變量,同時允許它被其子類覆蓋。如果沒有覆蓋,它確保有一些實現。希望有所幫助。 [MSDN page](https://msdn.microsoft.com/en-us/library/9fkccyh4.aspx) – DPac
我在這裏沒有看到問題... – noobed