DbSet中的UserProfile对象我在SimpleMembershipProvider中设置没有填充

时间:2013-11-15 14:50:44

标签: c# sql

我在MVC应用程序中使用SimpleMembershipProvider。我的UserProfile表的名称是'Employees' 这是我初始化表的代码行==> WebSecurity.InitializeDatabaseConnection("PcsWebDB", "Employees", "IdNumber", "UserName", autoCreateTables: true);

创建并登录后(因此在系统上创建用户)我通过SQL Modify Table Command将字段添加到表中,然后填充插入。然后使用新字段更新我的模型(以及它们与表匹配的双重和三重检查)。

我的问题是当我尝试引用它时,Employees总是为NULL。这是我的上下文==>

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 =“Enumeration没有产生结果”,因为它是一个我所期望的空表。但即使Employees表中有数据,Employees对象也始终为null。它是NULL而不是空的这一事实让我相信它甚至没有正确初始化。我怀疑它可能与SimpleMembership有关。我似乎无法在网上找到任何关于此的内容。

所以我的问题是双重的。一,任何用于解决Entity Framework问题的好工具(因为它显然是一个幕后问题)和两个为什么当我知道有数据时我会得到Null?

非常感谢所有帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

以下是最终结果:员工表中有两个名称中包含“id”的字段。其中一个有NULL值。即使我注释了我的主键,我认为EF感到困惑并试图使用NULL值。一旦我骑上了这个领域(我意识到我真的不需要它)并且在一个带有id的字段中没有NULL ......它有效!