Мы используем EF 4.1 и свободный API для получения данных из устаревшей базы данных (которые нам не разрешено изменять). У нас возникла проблема с созданием связи между двумя таблицами, в которых связанные столбцы не первичные и внешние ключи
. С помощью классов ниже, как бы мы могли настроить связь «один ко многим» между ] Сообщать
и RunStat
, чтобы Report.RunStats
возвращал все объекты RunStat
, где поля ReportCode
равны?
public class Report
{
[Key]
public int ReportKey { get; set; }
public string Name { get; set; }
public int ReportCode { get; set; } // Can we associate on this field?
public virtual ICollection<RunStat> RunStats { get; set; }
}
public class RunStat
{
[Key]
public int RunStatKey { get; set; }
public int ReportCode { get; set; }
public DateTime RunDate { get; set; }
}
По сути, я хочу использовать Fluent API для настройки EF таким образом, чтобы он считал Report.ReportCode
внешним ключом, а RunStat.ReportCode
- первичным ключом.