IF用户角色/家庭等于
本文关键字:家庭 用户 角色 IF | 更新日期: 2023-09-27 18:21:15
我有三个表Users
、UsersInFamily
和Familys
。
我希望能够检查用户是否附加到姓氏。类似于检查用户是否处于角色(即User.IsInRole("Admin")
)的方式。我希望能够做下面这样的事情,但我不知道如何做到这一点(我是一个新手,所以请原谅我!):
var user = context.Users.Where(c => c.UserID == FormPostID).SingleOrDefault();
if (user.Familys.FamilyName == "Flinstone") // Can't seem to get the family name
我想我可能需要写一个函数GetFamilyForUser(UserID);
来进行比较,但希望我能做类似于上面的事情?
Essential我想检查用户是否在Family
和编辑器的Role
中,然后才能进行编辑。
有点像黑手党,只有当你在家里成为一个男人,你才能有自己的看法,哈哈!
如果我正确理解您的数据库设计,UsersInFamily应该包含UserID和FamilyID字段,对吧,这样多个用户就可以是多个族的成员?
如果是这样的话,你就不能按照你尝试的方式去做。你需要改为这样称呼:
var user = context.UsersInFamily.Where(c => c.UserID == FormPostID).SingleOrDefault();
if (user.Familys.FamilyName == "Flinstone")
{
// This should work
}
然而,如果Users和Familys表之间的关系是多对一的,那么您需要调用以下内容:
var user = context.Users.Where(c => c.UserID == FormPostID).SingleOrDefault();
foreach (Family f in user.Familys)
{
if (f.FamilyName == "Flintstone")
{
// This works
}
}