【发布时间】:2015-03-23 06:40:06
【问题描述】:
我有一个类似的界面
interface IEmpDeptRepository : IEmployeeRepository,IDepartmentRepository
{
IEnumerable<EmpDept> GetAll();
}
interface IEmployeeRepository
{
IEnumerable<Employee> GetAll();
}
interface IDepartmentRepository
{
IEnumerable<Department> GetAll();
}
EmpDept 类是
class EmpDept
{
public List<Employee> Employees { get; set; }
public List<Department> Departments { get; set; }
}
现在EmpDeptRepository类如下
public class EmpDeptRepository:IEmpDeptRepository
{
private List<EmpDept> empDepts = new List<EmpDept>();
public EmpDeptRepository()
{
Add(new EmpDept { Employees = IEmployeeRepository.GetAll(), Departments = IDepartmentRepository.GetAll() });
}
public EmpDept Add(EmpDept empDept)
{
if (empDept == null)
{
throw new ArgumentNullException("Employee Department");
}
empDepts.Add(empDept);
return empDept;
}
public IEnumerable<EmpDept> GetAll()
{
return empDepts;
}
IEnumerable<Employee> IEmployeeRepository.GetAll()
{
IEmployeeRepository employeeRepository = new EmployeeRepository();
return employeeRepository.GetAll();
}
IEnumerable<Department> IDepartmentRepository.GetAll()
{
IDepartmentRepository deptRepository = new DepartmentRepository();
return deptRepository.GetAll();
}
}
我收到以下错误
Error 1 Inconsistent accessibility: parameter type 'Models.EmpDept' is less accessible than method 'Models.EmpDeptRepository.Add(Models.EmpDept)'
Error 2 Inconsistent accessibility: return type 'Models.EmpDept' is less accessible than method 'Models.EmpDeptRepository.Add(Models.EmpDept)'
Error 3 Inconsistent accessibility: return type 'System.Collections.Generic.IEnumerable<Models.EmpDept>' is less accessible than method 'Models.EmpDeptRepository.GetAll()'
我犯了什么错误?
【问题讨论】:
-
是的,Priyanka 将
class EmpDept更改为public class EmpDept。它将解决错误。