我想使用 MVC 5 和存储库模式执行"存储过程"。我为它编写代码,但它给了我这样的错误
">找不到方法: 'System.Collections.Generic.IEnumerable'1 System.Data.Entity.Database.SqlQuery(System.String, System.Object[](">
我的界面
public interface IMemberRepository
{
IEnumerable<MemberDetails> GetAll();
}
存储 库
public class MemberRepository : IMemberRepository
{
ChatDBEntities entities = new ChatDBEntities(); // DB Entity which is generate by DB First Approach (EDMX)
public IEnumerable<MemberDetails> GetAll()
{
string SP_SQL = "[GetMemberDetails]";
var list = entities.Database.SqlQuery<MemberDetails>
(SP_SQL).ToList<MemberDetails>();
return list;
}
}
API 调用(从 API 调用存储库时给出的错误(
public class MemberController : ApiController
{
static readonly IMemberRepository repository = new MemberRepository();
public IEnumerable GetAll()
{
return repository.GetAll();
}
}
请有人帮我找到解决这个问题的方法。
我只是解决了这个问题。实际上,这是一个MissingMethodException。这发生在我的项目内的重叠.dll中。但是,使用Re-sharper清理使用和复制.dll对我来说不起作用。因此,我重新创建了项目,然后这个问题就消失了。