求教大牛:
我用mongo数据库做后台,想返回一个Json对象,总是提示错误:无法将类型为“MongoDB.Bson.BsonObjectId”的对象强制转换为类型“MongoDB.Bson.BsonBoolean”。怎么解决啊?我代码如下:(我使用的mongo驱动 http://www.mongodb.org/display/DOCS/CSharp+Language+Center)
using Mvc3MongoBlog.Models;
using Mvc3MongoBlog.Repository;
using Mvc3MongoBlog.Ctrl;
using MongoService1._0;
)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Mvc3MongoBlog.Models;
using Mvc3MongoBlog.Repository;
using Mvc3MongoBlog.Ctrl;
using MongoService1._0;
public ActionResult Add(Post post)
{
var oRes = CSuperTTDCtrl.Instance.AddBlog(post.Title,post.Body); //后台插入数据,成功执行
var oJsonRes = Json(oRes.Document, JsonRequestBehavior.AllowGet);//把bsondocument文档转换成json格式,
return oJsonRes;//这一步执行之后弹出错误提示
}
------解决方案--------------------------------------------------------
你这个代码丝毫没有说明BsonDocument是如何转换的。这个代码没有用,看不出问题。
------解决方案--------------------------------------------------------
是,转换json,无非是遍历property然后按照json格式输出出来
你可以参考
http://blog.sina.com.cn/s/blog_5f92e8c50100xun8 这种简单的jsonhelper来写个转化即可
另外用T转换为另一个T,貌似不是转换的json吧?json出来就是个字符串吧,你这个转换出来的类型,本身带有生成string(json)的方法吗?