我正在尝试创建我的第一个mvc类,并且在入门时遇到了问题。
我在托管帐户上使用共享数据库,并创建了以下课程
namespace MvcApplication2.Models
{
public class tUsers
{
public int UserID { get; set; }
public string Username { get; set; }
public string UserEmail { get; set; }
public string UserPassword { get; set; }
public int GroupId { get; set; }
}
public class tUsersDBContext : DbContext
{
public DbSet<tUsers> tUsers { get; set; }
}
}
这是我的连接字符串
<add name="DefaultConnection" connectionString="Data Source=gdfgdfgdfg;Initial Catalog=fsdf_fdsf;Persist Security Info=True;User ID=ddd_reddntal;Password=fgfggfdg" providerName="System.Data.SqlClient" />
我得到的错误是
无法检索“ mvcapplication2.models.tusers”的元数据或
在模型生成期间检测到更多验证错误:
实体类型用户没有保护密钥。
我的模型名称也需要与我的表名称完全匹配吗?
最佳答案
实体框架无法识别tUsers
类的主键属性。用UserID
属性注释Key
属性。如果表名与类名不同,请使用Table
属性指定表名。
尝试对类名使用正确的命名约定。在这种情况下,它应该是User
而不是tUsers
。
[Table("MyTableName")]
public class tUsers
{
[Key]
public int UserID { get; set; }
public string Username { get; set; }
public string UserEmail { get; set; }
public string UserPassword { get; set; }
public int GroupId { get; set; }
}