2013-11-15 39 views
0

我在MVC應用程序中使用SimpleMembershipProvider。我的UserProfile表的名稱是'Employees'。
下面是代碼,我初始化表==>WebSecurity.InitializeDatabaseConnection("PcsWebDB", "Employees", "IdNumber", "UserName", autoCreateTables: true);DbSet中的UserProfile對象我在SimpleMembershipProvider中設置了不填充

它被創建和我登錄(從而在系統上的用戶)通過我SQL修改表命令添加的字段表,然後經過線填充插入。隨後用新字段更新我的模型(以及與表格匹配的雙重和三重檢查)。

我的問題是員工總是空的,當我嘗試引用它。這裏是我的背景==>

public class PcsWebDB : DbContext 
{ 
    public DbSet<Company> Company { get; set; } 
    public DbSet<Employee> Employees { get; set; } 
    public DbSet<Patient> Patients { get; set; } 
    public DbSet<Transaction> Transactions { get; set; } 

    public PcsWebDB() 
    { 
     Employees = Set<Employee>(); 
    } 

我可以看到公司和患者的數據。事務顯示以下內容:Empty =「枚舉不會產生任何結果」,因爲它是我期望的空表。但即使Employees表中有數據,Employees對象始終爲空。它是NULL而不是空的事實讓我相信它甚至沒有被正確地初始化。我懷疑這可能與SimpleMembership有關。我似乎無法在網上找到關於此的任何內容。

所以我的問題是兩倍。一,對於這樣的問題對Entity Framework進行故障排除的任何好工具(因爲它顯然是一個幕後問題)和兩個當我知道有數據時爲什麼會得到一個空值?

所有幫助都非常感謝。謝謝。

回答

0

這就是結果:在員工表中,有兩個字段中有'id'的名字。其中一個有NULL值。儘管我註釋了我的主鍵,但我認爲EF很困惑,並試圖使用NULL值。一旦我騎上了賽場(我意識到我真的不需要它),並且在ID爲空的場地中沒有NULL ...它工作了!