我有一个由SqlQuery调用填充的IEnumerable对象,我想迭代它并更新其类型类成员。
我的示例代码:
public class MyClass
{
public string id { get; set; }
public string data { get; set; }
}
...
public JsonResult GetMyClass(...)
{
IEnumerable<MyClass> oMyClass = db.Database.SqlQuery<MyClass>("SELECT ...");
// Here I want to iterate through the oMyClass object updating
// the "data" member before returning it as a Json
return Json(oMyClass, JsonRequestBehavior.AllowGet);
}
似乎没有一种很好的方法可以做到这一点,特别是如果一个人也想要更新对象而不只是从中读取它。
答案 0 :(得分:7)
使用foreach
。这就是它的用途:
foreach(var item in oMyClass)
{
item.Property = newValue;
}
答案 1 :(得分:0)
public JsonResult GetMyClass(...)
{
IEnumerable<MyClass> oMyClass = db.Database.SqlQuery<MyClass>("SELECT ...");
foreach (var o in oMyClass)
{
// do somethig with o
}
return Json(oMyClass, JsonRequestBehavior.AllowGet);
}
答案 2 :(得分:-1)
IEnumerable<MyClass> oMyClass = db.Database.SqlQuery<MyClass>("SELECT ...").ToList();
oMyClass.ForEach(i => i.data = somevalue);