我使用VS 2015和Entity Framework 6.2.0。
我在sqlServer中有两个表tblUsers
和tblFields
。
我创建了两个与我的表相关的模型:
[Table("tblUsers")]
public class Users
{
[Key]
public string UserName { get; set; }
public string UserPassword { get; set; }
public DateTime RegisterDateTime { get; set; }
public string FieldId { get; set; }
public float Score { get; set; }
}
[Table("tblFields")]
public class Fields
{
[Key]
public string FieldID { get; set; }
public string FieldTitle { get; set; }
}
所以,在我的DataAccessLayer中,我有:
public class Dal : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Users>().ToTable("tblUsers");
modelBuilder.Entity<Fields>().ToTable("tblFields");
base.OnModelCreating(modelBuilder);
}
public DbSet<Users> UsersSet { get; set; }
public DbSet<Fields> FieldsSet { get; set; }
}
当我在BusinessLayer中使用以下代码获取用户数据时:
public List<Users> GetAllUsers()
{
Dal dal = new Dal();
return dal.UsersSet.ToList();
}
没有用户返回! 问题在哪里?
答案 0 :(得分:0)
我创建了一个数据库及其表。然后我创建了从数据库中使用的项目。问题出在这里!
解决方案:我从数据库中删除了所有表,然后运行了我的应用程序。应用程序再次创建了所有表格并解决了问题。