我有一个属性
的类 public List<Point> RouteWayPoints { get; set; }
Point - 是一个命名空间System.Windows
的类当我将此对象保存到Mongo Db中时 - 它可以正常工作。但是,当我尝试从带有构建器过滤器的db中获取它时 - 我有一个例外 反序列化类BusLaneRoutes的RouteWayPoints属性时发生错误:值类System.Windows.Point无法反序列化。
private IMongoCollection<BusLaneRoutes> _busLaneRoutesCollection;
var filter = Builders<BusLaneRoutes>.Filter.Eq("RouteId", routeId);
var result = _busLaneRoutesCollection.Find(filter).FirstOrDefault();
答案 0 :(得分:0)
MongoDB C#驱动程序不支持反序列化结构。 Point
is actually a struct,而不是课程。因此,您会看到此错误。
有一个open bug请求修复,自2014年以来一直没有更新。但是有一个解决方法,如Stack Overflow answer所示,涉及创建自定义序列化程序。