代码之家  ›  专栏  ›  技术社区  ›  mgsdew

使用存储库模式和MVC5执行SP

  •  1
  • mgsdew  · 技术社区  · 7 年前

    我想使用MVC 5和存储库模式执行“存储过程”。我为它编写代码,但它给我的错误如下

    “” 找不到方法:'系统。集合。通用的IEnumerable'1系统。数据实体数据库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();
        }
    }
    

    请有人帮我找出解决这个问题的方法。

    1 回复  |  直到 7 年前
        1
  •  0
  •   mgsdew    7 年前

    我只是解决了这个问题。实际上这是一个 MissingMethodException缺失方法异常 。这种情况发生在重叠处。我的项目中的dll。 但是,清洁使用过的;复制使用Re sharper对我来说不合适。所以,我重新创建了这个项目,然后这个问题就消失了。