3

ここの指示に従いました http://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/databases/ - SQLiteデータベースに同期的に接続します。

public SQLiteConnection GetConnection()
{
    var dbFilname = "localDB.db3";
    string docsPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
    var path = Path.Combine(docsPath, dbFilname);

    var plat = new SQLitePlatformAndroid();
    var conn = new SQLiteConnection(plat, path);
    return conn;
}

非同期接続 (SQLiteAsyncConnection) に変更したいのですが、うまくいきません。

ここの指示によると - https://components.xamarin.com/gettingstarted/sqlite-net -パラメータとしてパスが必要なだけです

var conn = new SQLiteAsyncConnection(path);

それが機能しない場合、エラーは、予想されるパラメーターが次のとおりであることを示しています。

接続関数、TaskScheduler および TaskCreationOptions

どうすればいいのかわからず、うまくいく例を見つけることができませんでした。

前もって感謝します

4

2 に答える 2

0

Xamarin プラットフォーム Android Config、iOS および WP は基本的に同等

public SQLiteAsyncConnection GetConnectionAsync()
        {
            const string fileName = "MyDB.db3";
            var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
            var path = Path.Combine(documentsPath, fileName);

            var platform = new SQLitePlatformAndroid();

            var param = new SQLiteConnectionString(path, false); 
            var connection = new SQLiteAsyncConnection(() => new SQLiteConnectionWithLock(platform, param)); 

            return connection;
        }
于 2015-05-11T01:52:39.430 に答える