Я работаю над сопоставлением устаревшего приложения с классами и использую EntityFramework
против него.
Один недостаток, который я обнаружил в этой устаревшей базе данных, заключается в том, что несколько таблиц ссылаются на конкретную таблицу через 2 разных поля.
Я не уверен, возможно ли это и почему я ничего не могу найти, поэтому я здесь.
Вот визуальный образец:
public class Term {
[Key]
public string Id { get; set; } // sample value: "12-34-56/78"
public string CleanId { get; set; } // sample value: "12345678" (basically the Id without special characters)
public DateTime Date { get; set; }
}
public class App {
public int Id { get; set; }
public string CleanTermId { get; set; } // foreign key is in Term class using the `CleanId` field
}
public class Question {
public int Id { get; set; }
public string TermId { get; set; } // foreign key is in Term class using the `Id` field
}
Как правильно добавить навигационное свойство из App
и Question
в класс Term
, используя DataAnnotations
(предпочтительно) - Fluent API
? Мне не требуется навигационное свойство от Term
до App
или Question
, но это нормально, если ваш ответ включает его.
Дайте мне знать, если это не ясно.