首页 > 解决方案 > 实体框架返回零结果

问题描述

我首先使用实体​​框架代码创建了一个数据库,并在表中播种了 4 列(请参阅屏幕截图)。现在我想从联系人表中检索所有联系人,但收到零结果。如果我通过管理工作室(也在屏幕截图中)从 ef 执行生成的 sql,它工作正常。我写了一些测试代码,但连接似乎也很好。我不知道该去哪里找了。

  public class ContactDataService : IContactDataService
{
    public IEnumerable<Contact> GetAll()
    {
     using (var ctx = new ContactOrganizerDbContext())
        {

            List<Contact> contacts = ctx.Contacts.AsNoTracking().ToList();
            //returns true
            bool isValid = ctx.Database.Exists();
            //returns also true
            bool canOpenClose = canConnectionOpenedAndClosed(ctx);
            return contacts;
        }
    }

    private bool canConnectionOpenedAndClosed(ContactOrganizerDbContext ctx)
    {
        try
        {
            ctx.Database.Connection.Open();
            ctx.Database.Connection.Close();
        }
        catch (SqlException)
        {
            return false;
        }
        return true;
    }
}

//C#类

    public class Contact
{
    public int Id { get; set; }

    [Required]
    [StringLength(50)]
    public string FirstName { get; set; }
    [StringLength(50)]
    public string LastName { get; set; }
    [StringLength(50)]
    public string Email { get; set; }
}

在此处输入图像描述

标签: c#sql-serverentity-framework-6

解决方案


好吧,entityframework 在两个不同的服务器上创建了相同的数据库。所以 Arman Ebrahimpour 和 jdweng 是对的,我看错了数据库。


推荐阅读