Проверки на следующие сценариях Db:EF Карта One Для многого сложного PK - Нет PK недвижимость по уходу за детьми класса
CREATE TABLE tlogdata
(
logentryid INT NOT NULL, -- PK
[key] NVARCHAR(25) NOT NULL, -- PK
value NVARCHAR(MAX) NOT NULL
)
CREATE TABLE tlogentry
(
logentryid INT IDENTITY(1,1) NOT NULL, -- PK
[message] NVARCHAR(4000) NOT NULL
)
tlogentrydata имеет композитную PK => logentryid и ключ. logentryid ссылки tlogentry.logentryid колонка
Теперь то, что я хочу сделать, это создать свою модель, как это:
public class LogEntryData
{
public string Key { get; set; }
public string Value { get; set; }
}
public class LogEntry
{
public int Id { get; set; }
public string Message { get; set; }
public List<LogEntryData> Data { get; set; }
}
Как вы можете видеть, LogEntryData не содержит «LogEntryID» в качестве свойства. Поэтому мой вопрос: как я могу сопоставить (используя свободный API) эти два класса в моих таблицах? Я не знаю, можно ли даже сказать EF, что LogEntryData имеет составной PK, не подвергая один из столбцов общедоступному свойству (в этом случае LogEntryId не существует в классе LogEntryData, но существует в таблице tlogentrydata в качестве столбца logentryid)
Заранее спасибо!
Я в конечном итоге добавляю LogEntryId в класс LogEntryData и отлично работал. Так спасибо за ответ. – rzumbado