Mam następujące dwa modeleEntity Code Framework Pierwszy One to One związku
public class Account
{
public int Id { get; set; }
public string Name { get; set; }
public int CurrentPeriodId { get; set; }
[ForeignKey("CurrentPeriodId")]
public virtual Period CurrentPeriod { get; set; }
public virtual ICollection<Period> Periods { get; set; }
}
public class Period
{
public int Id { get; set; }
public int AccountId { get; set; }
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public virtual Account Account { get; set; }
}
i próbuję uruchomić następujące zapytanie:
from p in context.Periods
where p.AccountId == accountId &&
p.Id == p.Account.CurrentPeriodId
select p.StartDate
I uzyskać sql wyjątek mówiący „Nieprawidłowy nazwa kolumny Account_AccountId ".
wiem mogłem podejść do tego z boku konto i zrobić coś podobnego
from a in context.Accounts
where a.Id == id
select a.CurrentPeriod.StartDate
Ale chciałbym wiedzieć, jak skonfigurować relacji, aby uzyskać drugi zapytanie do pracy. czego mi brakuje?
Dzięki takiemu rozwiązaniu zgubiłem odniesienie do konta z Okresu chociaż. –
@Nick Olsen: Zaktualizowano moją odpowiedź. – Kamyar