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

asp.net-mvc-4 c# entity-framework

Question

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?

1
3
7/2/2016 10:26:48 AM

Accepted Answer

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.

4
7/2/2016 10:17:49 AM

Popular Answer

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 = ..}


Related Questions





Related

Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow
Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow