我有两个类:添加方法 - MVC - 数据录入工作到两个表
**用户
UseP其中**用户有其ID(PK)和UserP有ID(FK)的用户。
我正在使用MVC 4.使用Fluent API。
这些类被映射到项目中以连接到数据库。我的项目分为控制器,服务,模型和视图。
我有一个使用UserPr字段的用户屏幕。
我怎样才能在课堂上实例化它,而不是一路下跌? (这样不会因为关系的工作,否则工作):
**CLASS USER.CS** public string Login { get { return this.UserP.login } set { login = value }}
纳入屏幕添加项目的用户,我也应该改变屏幕的状态,这种状态是内UserP。
控制器
public ViewResultBase Add(User model)
{
if (this.ModelState.IsValid)
{
try
{
this.Service.SaveUserP(model);
return this.SuccessView(true);
}
catch (ValidationException exception)
{
base.AddValidationErrors(exception);
return base.PartialView(model);
}
}
else
{
return base.PartialView(model);
}
}
服务
public void SaveUserP(User item)
{
//save fields from User (Running ok)
base.context.Usuario.Add(item);
//Attempt to save the login and their status in UserP
foreach (var userP in base.context.UserP.Where(x => x.IdUser == item.Id))
{
item.login = userP.Login;
userP.ParticipantType = 3;
base.context.UsersP.Add(userP);
}
}
我已经试过这种方式,但我不能。 如果item.login只是工作,因为登录的立场为[notmapped]在User.cs
总结:在列入屏幕(用户)我有一个字段,应该把(UserP)登录。
当我触发包容的方法,他应该救场,并保存用户登录使用UsuarioP IdUsuario为重点,也改变登录的状态(参与方= 3)
的错误,我得到:
无效的列登录(因为真的没有在用户没有登录)
时间来调试它仅包括用户领域,甚至通过在foreach。
我不知道如何操作,能帮助我吗?如果我不清楚,我会提供更多详细信息