我遇到了问题而且不知道该怎么做。有一个mvc项目,并在我的控制器中创建了我的linq查询来访问我的数据。但我更新了一些数据,有0或值。如何在我的linq查询中处理它?特别是d.direct有一些0值。我已尝试使用case when语句处理存储过程但在页面显示时没有工作
这是错误消息:
Line 2005: get { Line 2006: try { Line 2007: return ((double)(this[this.tableFactSpendingByIndustry.EmplDirectColumn])); Line 2008: } Line 2009: catch (global::System.InvalidCastException e)
var rows = from d in dt
select new object[] {
string.Empty,//+
d.industry_code.ToString(),
d.industry_desc,//description
string.Format("{0:C1}",DoD/cScale),//spending millions
string.Format("{0:N0}",d.Direct),//direct
string.Format("{0:N0}",d.Indirect),//indirect
string.Format("{0:N0}",d.Induced),//induced
string.Format("{0:C0}", Math.Round(Wage,0)),//avg ann wage
d.nextLevelMin.ToString(),
d.nextLevelMax.ToString(),
};//end select statement
return Json(new
{
iTotalRecords = dt.Count(),
aaData = rows
}, //end json return statement
JsonRequestBehavior.AllowGet);
答案 0 :(得分:1)
你必须做这样的事情:
d.nextLevelMin != null ? d.nextLevelMin.ToString() : string.empty