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

Có hỗ trợ trình điều khiển mongodb C # System.Dynamic.DynamicObject trong .NET 4 không?

Tôi đã tạo một tiện ích mở rộng chuyển tiếp thẳng tới trình điều khiển MongoDB để tuần tự hóa lại tài liệu BSON bằng cách sử dụng Json.NET và giải mã hóa nó dưới dạng động. Bằng cách bao gồm lớp sau, bạn có thể chỉ cần chuyển đổi các truy vấn MongoDB của mình thành động như thế này

dynamic obj = collection.FindOneByIdAs<BsonDocument>(someObjectId).ToDynamic();

Lớp mở rộng:

public static class MongoDynamic
{
    private static System.Text.RegularExpressions.Regex objectIdReplace = new System.Text.RegularExpressions.Regex(@"ObjectId\((.[a-f0-9]{24}.)\)", System.Text.RegularExpressions.RegexOptions.Compiled);
    /// <summary>
    /// deserializes this bson doc to a .net dynamic object
    /// </summary>
    /// <param name="bson">bson doc to convert to dynamic</param>
    public static dynamic ToDynamic(this BsonDocument bson)
    {
        var json = objectIdReplace.Replace(bson.ToJson(), (s) => s.Groups[1].Value);
        return Newtonsoft.Json.JsonConvert.DeserializeObject<dynamic>(json);
    }
}

Đảm bảo tham chiếu Newtonsoft.Json.dll ( http://james.newtonking.com /projects/json-net.aspx )



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm cách nào để tôi có thể sắp xếp vào các giá trị null được sắp xếp cuối cùng trong mongodb?

  2. MongoDB:tìm và tìm thấy với tính năng lọc mảng lồng nhau

  3. MongoDB:locale ::facet ::_ Tên S_create_c_locale không hợp lệ

  4. Tạo bộ sưu tập Meteor mới một cách nhanh chóng

  5. Mongoengine, chỉ lấy lại một số MapField