gpt4 book ai didi

c# - 过滤mongodb数据

转载 作者:可可西里 更新时间:2023-11-01 09:56:30 26 4
gpt4 key购买 nike

我有以下模型:

基类:

public abstract class Identifiable{
private ObjectId id;
private string name;

protected Identifiable(){
id = ObjectId.GenerateNewId();
}

[BsonId]
public ObjectId Id{
get { return id; }
set { id = value; }
}

[BsonRequired]
public string Name{
get { return name; }
set { name = value; }
}
}

名字是独一无二的。
channel 类

 public class Channel : Identifiable{
private DateTime creationDate;

private string url;
private DailyPrograming dailyPrograming;

public DailyPrograming DailyPrograming{
get { return dailyPrograming; }
set { dailyPrograming = value; }
}

public DateTime CreationDate{
get { return creationDate; }
set { creationDate = value; }
}

public string Url{
get { return url; }
set { url = value; }
}
}

每日节目。 name 属性是存储为 ddMMyyyy 的日期:

public class DailyPrograming : Identifiable{
public DailyPrograming(){
DailyPrograms = new List<Program>(30);
}

public IList<Program> DailyPrograms { get; set; }
}

程序:

public class Program : Identifiable{
private DateTime programDate;
private string category;
private string description;

public DateTime ProgramDate{
get { return programDate; }
set { programDate = value; }
}

public string Category{
get { return category; }
set { category = value; }
}

public string Description{
get { return description; }
set { description = value; }
}
}

现在,我想使用以下方法过滤特定日期的特定 channel 的节目:

public DailyPrograming GetProgramsForDate(string channelId, string prgDate){
ObjectId id = new ObjectId(channelId);
IMongoQuery query = Query.And(Query<Channel>.EQ(c => c.Id, id),
Query<DailyPrograming>.EQ(dp => dp.Name, prgDate));
var result = Database.GetCollection<DailyPrograming>(CollectionName).Find(query).FirstOrDefault();
return result;
}

但它从不返回现有数据。如何检索某个日期的 channel 节目? -

最佳答案

var builder = Builders<BsonDocument>.Filter;
var filt = builder.Eq("Price", "9.20")
& builder.Eq("ProductName", "WH-208");
var list = await collection.Find(filt).ToListAsync();

我们可以使用&代替$and。参见 this post ,再举个例子。

关于c# - 过滤mongodb数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28095210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com