包含Identity User with Entity Framework不起作用


我在查詢結果中包含我的身份用戶時遇到問題。其他實體包括在內,無論多少層深。

這是我正在使用的模型。

Building * --- 1 City
     *            *
     |          /
     |         /
     1        1
ApplicationUser

背景情況:

Building * --- 1 City
     *            *
     |          /
     |         /
     1        1
ApplicationUser

BuildingCity都有這些屬性:

Building * --- 1 City
     *            *
     |          /
     |         /
     1        1
ApplicationUser

我用來檢索數據的查詢:

Building * --- 1 City
     *            *
     |          /
     |         /
     1        1
ApplicationUser

在結果中,城市填充得很好,但是ApplicationUser不是。

這可能是一個命名問題嗎?我已經嘗試過UserId / UserAspNetUserId / AspNetUser作為屬性名稱而沒有成功。

我正在使用遷移來創建數據庫。為用戶創建的表名是AspNetUsers。

我正在使用實體框架7 beta 7,不確定這是否也適用於其他版本。

這些是EF Migrations生成的文件。

ApplicationDbContextModelSnapshot.cs

20150929181902_Init.cs

20150929181902_Init.Designer.cs

(我注意到在生成要上傳的文件時忘記包含Building> City關係,但這對於示例來說無關緊要)

一般承認的答案

我終於明白了。

ApplicationUser繼承自IdentityUser ,它繼承自IdentityUser<string> 。泛型類型用作主鍵,因此是一個string

我將我的Guid外鍵屬性更改為string s,現在一切正常。





許可下: CC-BY-SA
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因