我在玩MongoDB,有一个对象上面有一个MongoDB ObjectId.
如果我try 使用JSON.NET serialisertry 序列化ObjectID时,它给了我一个InvalidCastException
你知道发生了什么事,我该怎么解决吗?
using MongoDB.Driver;
using MongoDB.Bson;
using Newtonsoft.Json;
//this is a route on a controller
public string NiceJsonPlease()
{
var q = new TestClass();
q.id = new ObjectId();
q.test = "just updating this";
return JsonConvert.SerializeObject(q);
}
//simple test class
class TestClass
{
public ObjectId id; //MongoDB ObjectID
public string test = "hi there";
}
Exception Details: System.InvalidCastException: Specified cast is not valid.
如果将控制器方法更改为使用随附的序列化程序.NET,它运行正常(但是,这一个给出了丑陋的日期,布拉)
public JsonResult NiceJsonPlease()
{
var q = new TestClass();
q.id = new ObjectId();
q.test = "just updating this";
return Json(q, JsonRequestBehavior.AllowGet);
}