这里是c#初学者。
我试图只返回与当前用户相同设施中的用户数量(除非该用户是管理员)。
在第二行和第三行HttpContext.User
下面有一条红线,上面写着
非静态字段、方法或属性HttpContext需要对象引用。用户">
我试过研究这个,没有一个解决方案,比如使方法静态或通过System.Web.HttpContext.User
调用它对我有效。
private int GetUsersforFacility(ICollection<ApplicationUserRole> Users)
{
int userFacilityID = (int)HttpContext.User.GetFacilityId();
bool manager = HttpContext.User.IsManager();
if (!manager)
{
return Users.Where(user => user.FacilityID == userFacilityID).Count;
}
return Users.Count;
}
如有任何建议,不胜感激。
HttpContext
内部的控制器是继承自ControllerBase
的属性,如果你使用它的控制器HttpContext
只是一个类,所以只有静态成员可以访问。
为了访问它,你必须通过或注入HttpContext
。