我很難搞清楚我想要完成的語法。如上所述,我正在使用MongoDB的C#驅動程序。MongoDB使用C#驅動程序的多字段查詢
我有一個用戶實體定義爲
[BsonIgnoreExtraElements]
public class User : MongoEntity
{
[BsonElement]
public string Username { get; set; }
[BsonElement]
public string Password { get; set; }
[BsonElement]
public string Email { get; set; }
}
我也有我的蒙戈數據庫執行對用戶採集行動UserService類。以下是我如何創建一個真正簡單的登錄示例的例子。
public UserPresentation Login(string username, string password)
{
var entityQuery = Query<User>.EQ(e => e.Username, username.ToUpper());
var entity = this.MongoConnectionHandler.MongoCollection.FindOne(entityQuery);
return (entity != null && entity.Id.ToString().Length > 0 && entity.Password == password) ? new UserPresentation(entity) : null;
}
這工作,但我的問題是,而不是創建一個查詢,只查找用戶名==用戶名,返回的元素,然後if語句中比較密碼......,可我莫名其妙地追加更多領域到初始的entityQuery
對象。
'Query.And'?那是你在找什麼? – WiredPrairie