0

我正在尝试创建一个具有分离类的解决方案,所以我有:

public class RepositorioPadrao<TEntidade> : IRepositorioPadrao<TEntidade>
    where TEntidade : class
{

    public readonly ISQLiteConnection _connection;

    public RepositorioPadrao(ISQLiteConnectionFactory factory)
    {
        _connection = factory.Create("easybudget.sql");
        _connection.CreateTable<TEntidade>();
    }

    public virtual void Inserir(TEntidade objeto)
    {
        _connection.Insert(objeto);
    }

然后使用这个我有:

public class RepositorioDeCategoria : RepositorioPadrao<Categoria>, IRepositorioDeCategoria
{
    public List<Categoria> ObterTudo()
    {
        return _connection
                .Table<Categoria>()
                .OrderByDescending(x => x.Descricao)
                .ToList();
    }
}

问题是,它EasyBudget.Core.Repositorio.RepositorioPadrao<EasyBudget.Core.Dominio.Categoria>不包含带 0 个参数的构造函数。

4

1 回答 1

0

要解决您当前的问题,您可以向调用基类的 RepositorioDeCategoria 添加一个构造函数:

 public RepositorioDeCategoria(ISQLiteConnectionFactory factory)
       : base(factory)
 {
 }

或者,如果您将拥有多个Categoria并且希望它们共享相同的_connection,那么您可能需要重新组织您的类,以便它们使用某种形式的聚合而不是继承。

于 2013-06-06T06:30:01.093 回答