【问题标题】:MongoDb C# Driver Builders Filter deserialisation exceptionMongoDb C# Driver Builders Filter 反序列化异常
【发布时间】:2017-03-12 16:59:20
【问题描述】:

我有一个有属性的类

  public List<Point> RouteWayPoints { get; set; }

Point - 是命名空间 System.Windows 的一个类

当我将此对象保存到 Mongo Db 中时 - 它可以工作。但是,当我尝试使用构建器过滤器从数据库中获取它时 - 我有一个例外 反序列化 BusLaneRoutes 类的 RouteWayPoints 属性时出错:无法反序列化值类 System.Windows.Point。

    private IMongoCollection<BusLaneRoutes> _busLaneRoutesCollection;
    var filter = Builders<BusLaneRoutes>.Filter.Eq("RouteId", routeId);
    var result = _busLaneRoutesCollection.Find(filter).FirstOrDefault();

【问题讨论】:

    标签: c# mongodb


    【解决方案1】:

    MongoDB C# 驱动程序不支持反序列化结构。 Pointis actually a struct,不是类。因此,您会看到此错误。

    有一个 open bug 请求修复该问题,自 2014 年以来一直没有更新。但有一个解决方法,如 Stack Overflow answer 中所见,涉及创建自定义序列化程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-20
      • 2013-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-09
      相关资源
      最近更新 更多