我创建了一个 public HttpResponseMessage Xamarin_login(string username, string password) {
var user = db.UserCredentials.Where(x => x.UName == username && x.UIPassword == password).FirstOrDefault();
if (user == null) {
return Request.CreateResponse(HttpStatusCode.Unauthorized, "Please Enter valid UserName and Password");
} else {
return Request.CreateResponse(HttpStatusCode.Accepted, "Success");
}
}
应用程序,该应用程序使用WebAPI和Azure进行登录身份验证,其成功运行
现在,我希望得到用户的权利,无论是管理员还是数据库中的读者
请指导我。
这是我的登录代码。
route
答案 0 :(得分:0)
根据您的代码,我猜您可以使用自己的数据库来存储用户Credential及其角色。
因此,如果您想获得用户的角色,可以使用Linq在角色中搜索用户。
首先,您应该在数据库中拥有一个用户角色表,该表将与用户Credential表相关联,或者您只是将用户角色存储在Credential表中。
如果您使用EF并且您已与用户角色表相关联。
您可以使用以下代码:
db.UserRole.Where(x => x.userid(or name according to your design or directly user object) = uerid).FirstOrDefault();
如果您将角色存储在UserCredentials表中。
您只需在用户对象中找到角色属性。
类似的东西:
user.role
如果您不使用EF,则只需使用sql查询根据用户名或ID查询数据库即可获得其角色。
此外,如果您仍然不知道如何获取它,我建议您可以使用您的数据库实体模型发布更多相关代码(如果您使用EF或其他内容)或发布您的sql数据库表的设计方式。