我制作了web api,它从mongodb
返回了一系列类别public class Default1Controller : ApiController
{
public IEnumerable<Category> Get()
{
MongoClient client = new MongoClient();*
var server = client.GetServer();
var db = server.GetDatabase("local");
var collection = database.GetCollection<Category>("categories").FindAll().ToList();
return model;
}
}
问题是,当我得到响应为xml时,我得到了结果。 但是一旦我用寄存器方法写
config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("text/html"))
所以当我尝试获得JSON
结果时,我得到了异常:
StackOverFlowException in NewtonSoft.Json.dll
修改 这是My Category类的代码
public class Category
{
public ObjectId _id;
public string CreatedOn { get; set; }
public string Description { get; set; }
}
因此,您可能认为问题在于序列化ObjectID存在问题
因为如果我使用两个字符串属性ans制作随机类,则返回该类的List,以Json格式返回没有问题