明显不工作(ASP 很棒的控制)
Distinct not working (ASP Awesome control)
我正在使用 JSON 为下拉列表发送一个 ASP 很棒的组合框条目。
代码如下:
public ActionResult GetEngineerData()
{
var items = db.Results.Where(x=>x.Engineer != null).Select(o=>new KeyContent(o.Engineer,o.Engineer)).Distinct()
return Json(items);
}
这没有提供不同的列表,而是有很多重复项。
我也试过这样做(在 Select KeyContent 代码之前定位不同):
public ActionResult GetEngineerData()
{
var items = db.Results.Where(x=>x.Engineer != null).Distinct().Select(o=>new KeyContent(o.Engineer,o.Engineer))
return Json(items);
}
感谢您的帮助。
创建 new KeyContent
时,您会得到 distinct 个实例 - 不同的对象,即使它们的值相同。
这就是为什么你的第一个代码不起作用。
在你的第二个中,你检查 Results
是否不同,并且对于每个不同的,你 select Engineer
。
如果你想要不同的工程师,试试这个:
public ActionResult GetEngineerData()
{
var items = db.Results
.Where(x=>x.Engineer != null) //eliminate empty values
.Select(x=>x.Engineer) //select only the engineer-item
.Distinct() //remove _duplicate engineers_ from the list
.Select(x=>new KeyContent(x,x));//for each unique engineer, create a KeyContent instance
return Json(items);
}
我正在使用 JSON 为下拉列表发送一个 ASP 很棒的组合框条目。
代码如下:
public ActionResult GetEngineerData()
{
var items = db.Results.Where(x=>x.Engineer != null).Select(o=>new KeyContent(o.Engineer,o.Engineer)).Distinct()
return Json(items);
}
这没有提供不同的列表,而是有很多重复项。 我也试过这样做(在 Select KeyContent 代码之前定位不同):
public ActionResult GetEngineerData()
{
var items = db.Results.Where(x=>x.Engineer != null).Distinct().Select(o=>new KeyContent(o.Engineer,o.Engineer))
return Json(items);
}
感谢您的帮助。
创建 new KeyContent
时,您会得到 distinct 个实例 - 不同的对象,即使它们的值相同。
这就是为什么你的第一个代码不起作用。
在你的第二个中,你检查 Results
是否不同,并且对于每个不同的,你 select Engineer
。
如果你想要不同的工程师,试试这个:
public ActionResult GetEngineerData()
{
var items = db.Results
.Where(x=>x.Engineer != null) //eliminate empty values
.Select(x=>x.Engineer) //select only the engineer-item
.Distinct() //remove _duplicate engineers_ from the list
.Select(x=>new KeyContent(x,x));//for each unique engineer, create a KeyContent instance
return Json(items);
}