我有一个使用SQLite的Xamarin Forms项目。我有一个父母和孩子模型 在相关领域使用正确的外键,ManyToOne和Cascading选项。
我一直在使用Scott Hanselman的AsyncLock类(http://www.hanselman.com/blog/ComparingTwoTechniquesInNETAsynchronousCoordinationPrimitives.aspx) 在我的db方法中这样:
public async Task<List<Client>> GetAllAsync()
{
List<Client> clients = new List<Client>();
using (await SQLiteBase.Mutex.LockAsync().ConfigureAwait(false))
{
//SQLiteAsyncConnection _connection is set up elsewhere...
clients = await _sqLiteBase._connection.Table<Client>().ToListAsync().ConfigureAwait(false);
}
return clients;
}
到目前为止没问题。我面临的问题是,我无法看到此连接上的级联操作。我添加了一个普通SQLiteConnection
,它有 - WithChildren
方法,但我需要使用SQLiteAsyncConnection
连接。
我引用了SQLite.Net,SQLiteNetExtensions,SQLite.Net.Async和SQLitePCL.raw。
为什么我在异步连接对象上看不到〜WithChildren
方法?
答案 0 :(得分:5)
您必须将SQLiteNetExtensions.Async包添加到项目https://www.nuget.org/packages/SQLiteNetExtensions.Async/