我使用 MongoDB 提供的 C# 驱动程序将 MongoDB 数据库与 MVC4 WebAPI 一起使用。我有一个序列化问题。我收到以下错误,
"ExceptionMessage=Error getting value from '__emptyInstance' on 'MongoDB.Bson.ObjectId'"
如果我在我的 HTTP 请求中将 Content-Type 更改为 xml,它就可以正常工作。我将不胜感激任何帮助。
我复制了下面的模型。
public class Subscriber
{
public ObjectId _id;
public long SubscriberId { get; set; }
public Name Name { get; set; }
public Address Address { get; set; }
public string Phone { get; set; }
public ICollection<Subscription> Subscription { get; set; }
public Subscriber()
{
Name = new Name();
Address = new Address();
Subscription = new Collection<Subscription>();
}
}
解决方案
转换 _id 类型字符串并如下装饰字段就可以了
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
public string _id;