首页 > 解决方案 > 发生错误::“EmployeeDataAccess.EmployeeDBEntities”:在 using 语句中使用的类型必须隐式转换为“System.IDisposable”

问题描述

public class EmployeesController : ApiController
{
    public IEnumerable<Employee> Get()
    {
        using (EmployeeDBEntities entities = new EmployeeDBEntities())
        {
            return entities.Employees.ToList();
        }
    }
    public IEnumerable<Employee> Get(int id)
    {
        using (EmployeeDBEntities entities = new EmployeeDBEntities())
        {
            return entities.Employees.FirstOrDefault(e => e.ID == id);
        }
    }
} 

标签: c#asp.netasp.net-web-api

解决方案


您的 EmployeeDBEntities 类必须实现 IDisposible 才能使用using

https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/using-statement

或者,不要使用using

EmployeeDBEntities entities = new EmployeeDBEntities();
return entities.Employees.ToList();

推荐阅读