的類型調用的最具體方法這裏總的OO noob問題。我有這兩種方法中的一類爲什麼不是根據參數
private void StoreSessionSpecific(LateSession dbSession, SessionViewModel session)
{
session.LateSessionViewModel.Guidelines = dbSession.Guidelines.ToList();
}
private void StoreSessionSpecific(Session dbSession, SessionViewModel session)
{
// nothing to do yet...
}
當我打電話StoreSessionSpecific與dbSession是類型LateSession的(LateSession繼承會議)
var dbSession = new LateSession();
StoreSessionSpecific(dbSession, session);
我希望最上面的一個被調用。由於dbSession是LateSession類型的。
@Paolo Tedesco這是如何定義類的。
public class Session
{
public int ID { get; set; }
public int SessionTypeId { get; set; }
public virtual SessionType SessionType { get; set; }
[Required]
public DateTime StartTime { get; set; }
[Required]
public DateTime EndTime { get; set; }
// Session duration in minutes
// public int SessionDuration { get; set; }
public virtual ICollection<Attendee> Attendees { get; set; }
}
public class LateSession : Session
{
public int MaxCriticalIncidentsPerUser { get; set; }
public int MaxResultCriticalIncidents { get; set; }
public virtual ICollection<Guideline> Guidelines { get; set; }
}
是否有一個特定的原因,你輸入'var'而不是'LateSession'? – acron 2011-05-13 13:51:54
@acron,什麼是不輸入'var'的原因? – detunized 2011-05-13 13:53:40
@detunized,這只是我的看法,'var'是懶惰的,尤其是那時你像Saab一樣爲它分配一個特定的類型。爲什麼*不會*定義爲'LateSession'?事實上,這整個問題不是反對使用'var'的證明嗎? – acron 2011-05-13 13:59:35