Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我可以使用session.Query查询多个属性吗?_C#_Sql_Asp.net Mvc 3 - Fatal编程技术网

C# 我可以使用session.Query查询多个属性吗?

C# 我可以使用session.Query查询多个属性吗?,c#,sql,asp.net-mvc-3,C#,Sql,Asp.net Mvc 3,我想查询“用户”实体的另一个属性。 基本上,我需要知道,是否有可能将下面的陈述扩展到包括这样的内容 user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower()) && (u => u.Email == email); user=session.Query().SingleOrDefault(u=>u.Username.T

我想查询“用户”实体的另一个属性。 基本上,我需要知道,是否有可能将下面的陈述扩展到包括这样的内容

  user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower()) &&    (u => u.Email == email);
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower())和&(u=>u.Email==Email);
我知道这是不正确的,但你明白了,我想检查用户电子邮件以及用户名

这是当前代码

   public static bool IsDuplicateIdentity(string identity, string email, Type type)
    {
        using(ISession session = NHibernateHelper.SessionFactory().OpenSession())
        using (ITransaction tx = session.BeginTransaction())
        {
            User user = null;


            // the entity type is checked and then DB is queried to see if an object with that name and email exists
            if (type.BaseType == typeof(User))
            {
                user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower());
            }
      tx.Commit();

            if (user != null)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
    }
公共静态bool IsDuplicateIdentity(字符串标识、字符串电子邮件、类型)
{
使用(ISession session=NHibernateHelper.SessionFactory().OpenSession())
使用(ITransaction tx=session.BeginTransaction())
{
User=null;
//检查实体类型,然后查询DB以查看是否存在具有该名称和电子邮件的对象
if(type.BaseType==typeof(用户))
{
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower());
}
tx.Commit();
如果(用户!=null)
{
返回true;
}
其他的
{
返回false;
}
}
}

请注意,这是一个ASP.net MVC 3应用程序。

您就不能这样做吗?:

user = session.Query<User>()
    .SingleOrDefault(u => 
         u.Username.ToLower() == identity.ToLower() 
         && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>
u、 Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);

你就不能这样做吗

user = session.Query<User>()
    .SingleOrDefault(u => 
         u.Username.ToLower() == identity.ToLower() 
         && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>
u、 Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);

你就不能这样做吗

user = session.Query<User>()
    .SingleOrDefault(u => 
         u.Username.ToLower() == identity.ToLower() 
         && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>
u、 Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);

你就不能这样做吗

user = session.Query<User>()
    .SingleOrDefault(u => 
         u.Username.ToLower() == identity.ToLower() 
         && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>
u、 Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);

是的,您可以将它们组合在一起,并且几乎完全正确。试着这样做:

user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() && u.Email == email);
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email);

是的,您可以将它们组合在一起,并且几乎完全正确。试着这样做:

user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() && u.Email == email);
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email);

是的,您可以将它们组合在一起,并且几乎完全正确。试着这样做:

user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() && u.Email == email);
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email);

是的,您可以将它们组合在一起,并且几乎完全正确。试着这样做:

user = session.Query<User>().SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() && u.Email == email);
user=session.Query().SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email);
当然可以:

user = session.Query<User>()
      .SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() 
      && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);
当然可以:

user = session.Query<User>()
      .SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() 
      && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);
当然可以:

user = session.Query<User>()
      .SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() 
      && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);
当然可以:

user = session.Query<User>()
      .SingleOrDefault(u => u.Username.ToLower() == identity.ToLower() 
      && u.Email == email);
user=session.Query()
.SingleOrDefault(u=>u.Username.ToLower()==identity.ToLower()
&&u.电子邮件==电子邮件);

您可以编写以下代码

user = session.Query<User>()
      .where(u => u.Username.ToLower() == identity.ToLower() && u.Email == email).SingleOrDefault();
user=session.Query()
其中(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email).SingleOrDefault();

您可以编写以下代码

user = session.Query<User>()
      .where(u => u.Username.ToLower() == identity.ToLower() && u.Email == email).SingleOrDefault();
user=session.Query()
其中(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email).SingleOrDefault();

您可以编写以下代码

user = session.Query<User>()
      .where(u => u.Username.ToLower() == identity.ToLower() && u.Email == email).SingleOrDefault();
user=session.Query()
其中(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email).SingleOrDefault();

您可以编写以下代码

user = session.Query<User>()
      .where(u => u.Username.ToLower() == identity.ToLower() && u.Email == email).SingleOrDefault();
user=session.Query()
其中(u=>u.Username.ToLower()==identity.ToLower()&&u.Email==Email).SingleOrDefault();