MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

So sánh ngày tháng trong Mongodb với trình điều khiển C # LINQ

Cuối cùng, tôi đã tìm thấy một giải pháp bằng cách sử dụng bộ tuần tự tùy chỉnh cho trường Ngày. Đây là cách nó trông như thế này.

Lớp tôi:

[BsonIgnoreExtraElements]
public class Tweet
{
    public ObjectId Id { get; set; }

    [BsonElement("text")]
    public string Texto { get; set; }

    [BsonElement("created_at")]
    [BsonSerializer(typeof(FechaTweetsSerializer))]
    public DateTime Fecha { get; set; }
}

Và bộ nối tiếp tùy chỉnh của tôi:

public class FechaTweetsSerializer : SerializerBase<DateTime>
{

    public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, DateTime value)
    {
        context.Writer.WriteString(value.ToString(CultureInfo.InvariantCulture));
    }

    public override DateTime Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
    {
        var fecha = context.Reader.ReadString();
        return ConvertirFecha(fecha);
    }

    private DateTime ConvertirFecha(string fechaFormatoTwitter)
    {
        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(fechaFormatoTwitter, formato, enUS, DateTimeStyles.None);
        return fechaConvertida;
    }
}

Hy vọng nó sẽ giúp ích cho ai đó.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. ClusterControl Hiệu suất và Giám sát Sức khỏe

  2. Cách tìm tài liệu và tài liệu phụ duy nhất phù hợp với các tiêu chí đã cho trong bộ sưu tập MongoDB

  3. mongoDB khác biệt &ở đâu trong cùng một truy vấn?

  4. cơ chế thực hiện giao nhau trong truy vấn Mongo Linq là gì

  5. Lưu trữ _Id dưới dạng đối tượng hoặc chuỗi trong MongoDB?