Asp.net mvc MVC匿名JSON返回不正确的布尔值?
我正在用RavenDB实现一个完整的日历 我做了一个简单的,像往常一样匿名返回一个模型Asp.net mvc MVC匿名JSON返回不正确的布尔值?,asp.net-mvc,json,ravendb,Asp.net Mvc,Json,Ravendb,我正在用RavenDB实现一个完整的日历 我做了一个简单的,像往常一样匿名返回一个模型 public JsonResult GetHolidays() { return Json(Session.Query<Models.Holiday>().Select(d => new { id = d.Id, title = d.Name, start = d.DateStart,
public JsonResult GetHolidays()
{
return Json(Session.Query<Models.Holiday>().Select(d => new
{
id = d.Id,
title = d.Name,
start = d.DateStart,
end = d.DateEnd,
allDay = true
}), JsonRequestBehavior.AllowGet);
}
我已经做过很多次了。为什么返回的结果是false
即使我将其设置为
false
,它也会保持false
。我清除了缓存并重新启动了很多次。不知道为什么会这样。有人知道我做错了什么吗?不完全确定这会如何影响匿名类型,但您必须在查询RavenDB会话后使用.ToList()
它类似于源自/继承自数据库模型的匿名类型?不知道如何解释这种行为
public JsonResult GetHolidays()
{
return Json(Session.Query<Models.Holiday>()**.ToList()**.Select(d => new
{
id = d.Id,
title = d.Name,
start = d.DateStart,
end = d.DateEnd,
allDay = true
}), JsonRequestBehavior.AllowGet);
}
publicjsonresult GetHolidays()
{
返回Json(Session.Query()**.ToList()**.Select(d=>new
{
id=d.id,
title=d.名称,
start=d.DateStart,
end=d.DateEnd,
全天
}),JsonRequestBehavior.AllowGet);
}
不完全确定这会如何影响匿名类型,但您必须在查询RavenDB会话后使用
.ToList()
它类似于源自/继承自数据库模型的匿名类型?不知道如何解释这种行为
public JsonResult GetHolidays()
{
return Json(Session.Query<Models.Holiday>()**.ToList()**.Select(d => new
{
id = d.Id,
title = d.Name,
start = d.DateStart,
end = d.DateEnd,
allDay = true
}), JsonRequestBehavior.AllowGet);
}
publicjsonresult GetHolidays()
{
返回Json(Session.Query()**.ToList()**.Select(d=>new
{
id=d.id,
title=d.名称,
start=d.DateStart,
end=d.DateEnd,
全天
}),JsonRequestBehavior.AllowGet);
}
RavenDB不提供从索引中选择用户提供的值的方法。 您的查询尝试在查询期间进行(非常简单,但仍然)计算,而RavenDB不支持这一点。
您可以在查询从RavenDB返回后添加该属性。RavenDB不提供从索引中选择用户提供的值的方法。 您的查询尝试在查询期间进行(非常简单,但仍然)计算,而RavenDB不支持这一点。
您可以在查询从RavenDB返回后添加该属性。您如何读取
全天属性?使用Javascript?密钥名称是否不正确-例如,响应[0]['alllDay']
-导致您得到一个未定义的值,然后将其解释为错误?读取?我只是将浏览器指向url/Home/GetHolidays
,这是返回的字符串,值为false
。奇怪的是,我输入了“true”
,然后返回值null
?搞什么鬼?即使它是第一个属性,但没有区别,其余属性也可以工作。出于调试目的,请将查询结果存储在局部变量中。然后在将结果作为JSON返回之前放置一个断点。我想知道RavenDB查询是否是这里的问题。Select
方法是采用Func
还是采用表达式
?如果使用全天=(布尔值)trueah会发生什么?我想出来了!这真奇怪!请尽快回答。您如何全天阅读属性?使用Javascript?密钥名称是否不正确-例如,响应[0]['alllDay']
-导致您得到一个未定义的值,然后将其解释为错误?读取?我只是将浏览器指向url/Home/GetHolidays
,这是返回的字符串,值为false
。奇怪的是,我输入了“true”
,然后返回值null
?搞什么鬼?即使它是第一个属性,但没有区别,其余属性也可以工作。出于调试目的,请将查询结果存储在局部变量中。然后在将结果作为JSON返回之前放置一个断点。我想知道RavenDB查询是否是这里的问题。Select
方法是采用Func
还是采用表达式
?如果使用全天=(布尔值)trueah会发生什么?我想出来了!这真奇怪!尽快回答。我希望有人能给出一个很好的技术回答。我只接受让我知道真相的答案:)看起来RavenDB查询提供程序有一个bug。通过调用ToList(或AsEnumerable),可以将LINQ转换为没有bug的对象。你应该报告这个错误。我希望有人能给出一个好的技术答案。我只接受让我知道真相的答案:)看起来RavenDB查询提供程序有一个bug。通过调用ToList(或AsEnumerable),可以将LINQ转换为没有bug的对象。您应该报告此错误。感谢您解释实际问题。感谢您解释实际问题。