2015-06-24 1 views
-1

У меня проблема в моем коде ниже. Он спрашивает меня 1 аргумент. IRepositoryИспользование типичного типа «System.Collections.Generic.List <T>» требует 1 аргумент типа в IRepository

public interface IUserRepository 
{ 
    List GetAll(); // Error shows me here then i change this to List<User> GetAll(); but still getting the error. 
} 

Repository

public class UserRepository : IUserRepository 
{ 
    private IDbConnection _db = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString); 
    public List<User> GetAll() 
    { 
     return this._db.Query<User>("SELECT * FROM Users").ToList(); 
    } 
} 
+1

'Список ' должен быть как: интерфейс и реализация – Grundy

+0

Я использую этот пример http://www.codeproject.com/Articles/874219/Use-Dapper-NET-ORM-in-ASP-NET-MVC – TechGuy

+0

OHHHHHHHHH NOOOO !! 'GetAll' (очень уродливый!), А также вы извлекаете всех пользователей в память !!!!!!!!!!!!!! 1 –

ответ

2

Вы должны попробовать:

public interface IUserRepository<T> 
{ 
    List<T> GetAll(); 
} 

И потом:

public class UserRepository : IUserRepository<User> 
{ 
    private IDbConnection _db = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString); 
    public List<User> GetAll() 
    { 
     return this._db.Query<User>("SELECT * FROM Users").ToList(); 
    } 
} 
+0

это также не успех.i использовать этот пример http://www.codeproject.com/Articles/874219/Use-Dapper-NET-ORM-in-ASP-NET-MVC – TechGuy

+0

@TechGuy в примере, который вы предоставили, является не ясно, какой тип 'List' является тем, который возвращается интерфейсом GetAll – sblandin

Смежные вопросы