Entity Framework is throwing an error "Unable to evaluate the expression. Operation not supported. Unknown error: 0x80070057."

4

I am using Entity Framework to get db data. I wrote an action to return table data in JSON format as below:

public JsonResult GetEmployeesData()
{
     using (TrainingDBEntities db = new TrainingDBEntities())
     {
           return new JsonResult { Data = db.Employees, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
     }
}

It's not throwing any exception. But a console error is occurring with error code: 500. When I debugged, it showed an error

The function evaluation requires all threads to run

When I try to reload, a new error occurs:

Unable to evaluate the expression. Operation not supported. Unknown error: 0x80070057

I don't have any idea what's wrong with this code?

c#
entity-framework
asp.net-mvc-4
asked on Stack Overflow Jul 2, 2016 by Sivaprasad derangula • edited Jul 2, 2016 by Ahsan

2 Answers

4

The solution is :

public JsonResult GetEmployeesData()
{
     using (TrainingDBEntities db = new TrainingDBEntities())
     {
           var emps = db.Employees.ToList();
           return new JsonResult { Data = emps, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
     }
}

I think accessing db inside the JsonResult{} is causing the issue.

1

Evaluation is working properly because you have not converted result set into a valid datatype for JSON.

You can replace below code

JsonResult { Data = db.Employees, JsonRequestBehavior = ..}

with

JsonResult { Data = db.Employees.ToList(), JsonRequestBehavior = ..}
answered on Stack Overflow Aug 9, 2018 by Arti Gaikwad • edited Jul 26, 2019 by ivcubr

User contributions licensed under CC BY-SA 3.0