无法隐式转换类型' DoctorFront.Models.DocMaster'到' System.Collections.IEnumerable'。存在显式转换(您是否错过了演员?)
namespace DoctorFront.Controllers
{
public class DoctorController : ApiController
{
static readonly IDocRepositories Repository =new DocRepositories();
public IEnumerable GetAllDoctor()
{
return Repository.GetAll();
}
public IEnumerable GetDoctor(int id)
{
return Repository.Get(id);
}
}
}
答案 0 :(得分:2)
public IEnumerable GetDoctor(int id)
{
return Repository.Get(id); // problem here
}
您的方法GetDoctor
应该返回IEnumerable类型的对象。您的return语句仅返回单个 DocMaster
对象。
所以这应该有效:
public DocMaster GetDoctor(int id)
{
return Repository.Get(id);
}
希望这有帮助!
答案 1 :(得分:0)
您需要对任何方法执行操作,您的返回必须与方法声明匹配。因此,如果您有方法public IEnumerable Get(int id)
,则需要返回任何实现IEnumerable
的类。
示例BviLLe_Kid给出了正确的修正以停止接收此错误。
这是一个更完整的例子:
public IHttpActionResult Get(int id)
{
var doc = Repository.Get(id);
if (doc == null)
return NotFound();
return Ok(doc);
}
如果您正在使用Web API
,最好阅读rest