使用c#处理端点 - 尝试向用户添加角色(样板.NET用户表) 试图确定更新关系表的正确方法。
var context =new WebClient.Default.OptimizedContextContainer(new Uri("service_hostUri"));
context.Format.UseJson();
User userToUpdate = context.User.ByKey(new Dictionary<string, object>() { { "userId", Guid.Parse("some_guid" } }).GetValue();
Role roleToAdd = context.Role.ByKey(new Dictionary<string, object> { { "roleId", Guid.Parse("some_guid" } }).GetValue();
userToUpdate.Roles.Add(roleToAdd);
context.UpdateObject(userToUpdate.Roles);
context.SaveChangesAsync();
代码在UpdateObject调用时失败更新用户角色 - 'Context当前没有跟踪实体' - 如果我删除了UpdateObject调用并且只使用saveChangesAsAsync就没有错误,但是没有添加角色 如何以这种方式向用户添加角色?
答案 0 :(得分:0)
使用属性的导航属性,您应该使用
AddToObject(userToUpdate,"Roles",RoleToAdd)
而不是
context.UpdateObject(userToUpdate.Roles);
并删除
userToUpdate.Roles.Add(roleToAdd);