问题:在ASP MVC Repository中,如何解决返回类型的问题?
解决方法:
public interface IRepository
{
T GetById(int id);
IEnumerable GetAll();
void Add(T entity);
void Update(T entity);
void Delete(T entity);
}
public class UserRepository : IRepository
{
// 实现 IRepository 接口的方法
}
public abstract class BaseEntity
{
public int Id { get; set; }
}
public class User : BaseEntity
{
public string Name { get; set; }
}
public interface IRepository
{
BaseEntity GetById(int id);
IEnumerable GetAll();
void Add(BaseEntity entity);
void Update(BaseEntity entity);
void Delete(BaseEntity entity);
}
public class UserRepository : IRepository
{
// 实现 IRepository 接口的方法
}
这样,如果需要在Repository中返回一些其他类型的对象,只需继承自BaseEntity或实现IRepository接口即可。
以上两种解决方法可以根据具体的需求选择其中之一或结合使用。