Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLite连接-注入_Sqlite_Xamarin_Mvvmcross - Fatal编程技术网

SQLite连接-注入

SQLite连接-注入,sqlite,xamarin,mvvmcross,Sqlite,Xamarin,Mvvmcross,我正在尝试创建一个具有独立类的解决方案,因此我有: public class RepositorioPadrao<TEntidade> : IRepositorioPadrao<TEntidade> where TEntidade : class { public readonly ISQLiteConnection _connection; public RepositorioPadrao(ISQLiteConnectionFactory f

我正在尝试创建一个具有独立类的解决方案,因此我有:

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);
    }
公共类RepositorioPadrao:IRepositorioPadrao
TEntidade的位置:类
{
公共只读ISQLiteConnection\u连接;
公共仓库(ISQLiteConnectionFactory)
{
_connection=factory.Create(“easybudget.sql”);
_connection.CreateTable();
}
公共虚拟空间插入器(TEntidade objeto)
{
_连接。插入(objeto);
}
那么要使用它,我有:

public class RepositorioDeCategoria : RepositorioPadrao<Categoria>, IRepositorioDeCategoria
{
    public List<Categoria> ObterTudo()
    {
        return _connection
                .Table<Categoria>()
                .OrderByDescending(x => x.Descricao)
                .ToList();
    }
}
公共类RepositorioDeCategoria:RepositorioPadrao,IRepositorioDeCategoria
{
公共列表obertudo()
{
返回连接
.表(
.OrderByDescending(x=>x.descripcao)
.ToList();
}
}

问题是,
EasyBudget.Core.Repositorio.RepositorioPadrao
不包含接受0个参数的构造函数。

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

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

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