我有一個MongoDB的集合與代表日期的字符串場。在我的C#應用程序我映射該字符串轉換爲DateTime對象MongoDB中比較日期與C#LINQ司機
[BsonIgnoreExtraElements]
public class Tweet
{
public ObjectId Id { get; set; }
[BsonElement("text")]
public string Texto { get; set; }
[BsonElement("created_at")]
public string Fecha { get; set; }
public DateTime FechaConvertida
{
get
{
var formato = "ddd MMM dd HH:mm:ss zzzz yyyy"; //'Sun Oct 23 19:42:04 +0000 2016'
var enUS = new CultureInfo("en-US");
var fechaConvertida = DateTime.ParseExact(this.Fecha, formato, enUS, DateTimeStyles.None);
return fechaConvertida;
}
}
}
然後在我的API我做兩個日期之間的查詢過濾元件的結果,一類的聚合字段(使用「CSHARP驅動LINQ」 )
public IEnumerable<Tweet> GetTweetsDePeriodo(string nombreColeccion, int dias)
{
var hoy = DateTime.Today;
var fechaInicial = hoy.AddDays(-dias);
var coleccion = _db.GetCollection<Tweet>(nombreColeccion).AsQueryable<Tweet>();
var tweetsFiltrados = (from c in coleccion
where c.FechaConvertida >= fechaInicial
select c
).ToList();
return coleccion;
}
然後我得到以下錯誤: *處理請求時發生未處理的異常。 InvalidOperationException:不支持{document} .FechaConvertida
任何想法? 由於提前,
你可以聲明fechaInicial的日期時間,而不是變種。 –
你能告訴我們你的Tweet數據對象嗎? – Dudemanword
@viveknuna我試過了,但沒有改變任何東西。無論如何, – Pedraz