2017-08-08 14 views
0

我想添加某種日誌用於審計,每當用戶更改某些值時,我向該表添加一個條目。現在我有一個指向原始表的ID,加上用戶名,日期,操作,舊值和新值。沒有PK和表複製的實體框架表(對等)

本來我以爲我並不是真的需要PK,因爲它大部分都是隻寫表格。查詢這個表格基本上是爲了調試,並不會介意沒有索引,因此沒有PK。

除此之外,我的數據庫將與對等複製一起復制。

所以我使用的實體框架,它抱怨表沒有PK,所以它不讓我寫它。我想爲PK添加身份(1,1),但是複製會開始出現問題。而且我有點失去了下一步該怎麼做,所以我來到這裏的建議是:

  1. 有沒有辦法忽略實體框架,如果表中有沒有PK,讓它做寫?

  2. 我應該使用Guids而不是PK的整數嗎?

回答

0

EF不需要真正的PK。您只需向EF聲明一些能夠唯一標識一行的列的組合。

您甚至可以將EF聲明爲不是真正的PK,但是必須抑制樂觀併發檢查,並且永遠不要通過EF刪除或更新。