Asp.Net MVC中的实体验证错误
我正在使用ASP.net MVC…我已经创建了数据库,现在我使用下面的代码使用视图模型类在数据库中插入数据。 但它在用户表中的db.savechanges()上给出了实体验证错误(作为tbl) _用户)。请让我知道我哪里做错了 在DB中插入的代码Asp.Net MVC中的实体验证错误,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,我正在使用ASP.net MVC…我已经创建了数据库,现在我使用下面的代码使用视图模型类在数据库中插入数据。 但它在用户表中的db.savechanges()上给出了实体验证错误(作为tbl) _用户)。请让我知道我哪里做错了 在DB中插入的代码 public string RegisterStudent(RegisterationLoginViewModel svm) { tbl_User_Role usr_role = new tbl_User_Role
public string RegisterStudent(RegisterationLoginViewModel svm)
{
tbl_User_Role usr_role = new tbl_User_Role
{
// UserRole_Id=svm.User_Role_id,
RoleName = svm.User_Role,
Dsecription=svm.Description,
OtherDetails=svm.OtherDetails,
};
db.tbl_User_Role.Add(usr_role);
db.SaveChanges();
tbl_User S_Up = new tbl_User
{
FullName = svm.Full_Name,
DOB = svm.Date_of_Birth,
Address = svm.Home_Address,
MobileNumber = svm.Mobile_Number1,
CNIC = svm.CNIC,
Country = svm.Country,
Provience = svm.Provience,
City = svm.City,
UserRole_Id = usr_role.UserRole_Id,
Gender = svm.Gender,
CreatedOn = DateTime.Now,
};
db.tbl_User.Add(S_Up);
db.SaveChanges(); -->**Exception is thrown at this line**
如果模型
tbl\u User\u Role
中的UserRole\u Id
不是自动生成的,那么写这行代码UserRole\u Id=usr\u Role.UserRole\u Id
给出null
,因为它可能是tbl\u User
表的外键
此外,如果您已设置了DatabaseGeneratedOption.Identity
,则在保存usr\u角色后需要获取其UserRole\u Id
,然后将其分配给UserRole\u Id
最后,重新检查您的必填字段是否不为空,外键是否得到值。包括错误。完成,先生!错误在代码的最后一行,您需要查看错误本身,而不仅仅是“->**在这一行抛出异常**”堆栈跟踪会很有帮助。我对这个问题的第一个预感是fk约束。包括模型?需要查看tbl_User
class。可能您忘记了初始化一个不允许的null属性,或者您在模型中使用的DataAnnotation属性没有注意到它。