62,244
社区成员




public class User_Info
{
public User_Info()
{
this.RoleInfos = new List<Role_Info>();
}
public int Id { get; set; }
public string UserName { get; set; }
public string UserPwd { get; set; }
public int? RoleId { get; set; }
public bool Status { get; set; }
public List<Role_Info> RoleInfos { get; set; }
}
public class Role_Info
{
public Role_Info()
{
this.UserInfos = new List<User_Info>();
}
public int Id { get; set; }
public string RoleName { get; set; }
public bool Status { get; set; }
public List<User_Info> UserInfos { get; set; }
}
var model= db.User_Info.Where(p => p.Id == Id).FirstOrDefault();
model.UserName = username;
model.UserPwd = userpwd;
model.Status = status;
Role_Info_DAL roleModel = new Role_Info_DAL();
foreach (var item in roles)
{
model.RoleInfos.Add(roleModel.GetModel(Int32.Parse(item.ToString())));
}
var aa = db.SaveChanges();
Entities db = new Entities();
var q = db.WD_CompanyInfo.First(); //查询出主键 第一条
var v = q.WD_Product_Equipment.First(); //外键 第一条
//修改外键第一条的内容
v.xxxx=....
db.savechange
你可能是直接db.WD_Product_Equipment.first()这样查询的。所以并没有进入ef的跟踪。[/quote]
是不是Selet 就可以了Entities db = new Entities();
var q = db.WD_CompanyInfo.First(); //查询出主键 第一条
var v = q.WD_Product_Equipment.First(); //外键 第一条
//修改外键第一条的内容
v.xxxx=....
db.savechange
你可能是直接db.WD_Product_Equipment.first()这样查询的。所以并没有进入ef的跟踪。
var m = db.User_Info.Where(p => p.Id == Id).FirstOrDefault();
m.UserName = username;
m.UserPwd = userpwd;
m.Status = status;
Role_Info_DAL roleModel = new Role_Info_DAL();
List<Role_Info> roleList = new List<Role_Info>();
foreach (var item in roles)
{
var role_m = roleModel.GetModel(Int32.Parse(item.ToString()));
db.Role_Info.Attach(role_m);
roleList.Add(role_m);
}