非静态方法需要目标 [英] Non static method requires a target

查看:66
本文介绍了非静态方法需要目标的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

private PMS_USERS currUser;
private bool validateUserName()
{
    dbContext = new PmsEntities();
    var validateUser = dbContext.PMS_USERS.Where(p=> p.LOGICALREF != currUser.LOGICALREF).Where(p=> p.USERNAME == currUser.USERNAME);
    return !validateUser.Any();
}

您好,
在验证新用户时出现错误

Hello, I got an error while validating on my new user register form.

我的 PMS_USERS 表没有记录()。我还尝试检查 null 控件是否为 currUser

My PMS_USERS table has no record(null). I also tried checking for null control(s) for currUser.

我缺少什么?

错误是:


非静态方法需要目标


推荐答案

您应首先测试是否

if (currUser == null) return false;
if (dbContext == null) throw new Exception ("The dbContext has not been set");

第二,您可以像yhat一样简化查询:

Secondly, you can simplify your query like yhat :

 var validateUser = dbContext.PMS_USERS.Where(p=> p.LOGICALREF != currUser.LOGICALREF &&  p.USERNAME == currUser.USERNAME);

然后将return语句更改为:

And then change the return statement to :

return (validateUser.FirstOrDefault() != null);

如果要确保只有一个用户,可以选择使用FirstOrDefault的SingleOrDefault语句符合您的条件。

You can alternativelly use SingleOrDefault statement insead of FirstOrDefault, if you want to be sure there is only one user corresponding to your criteria.

这篇关于非静态方法需要目标的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆