5

Windows 8.1 モダン UI アプリケーションにデータベースを実装しようとしています。これを Windows Phone 8.1 アプリ用に作成しましたが、新しい Windows 8.1 アプリでは機能しません。

インスタンス化するSQLiteExceptionと with メッセージが表示されましたCould not open database file: MyAppBase.db (CannotOpen)SQLiteConnection

public static DatabaseHelper Instance
    {
        get
        {
            if (_instance == null)
            {
                _instance = new DatabaseHelper();
            }

            return _instance;
        }
    }

    public DatabaseHelper()
    {
        _connection = new SQLiteConnection(DATABASE_NAME);

        _connection.CreateTable<UserEntity>();
    }

私は次の手順に従います:Nugetリファレンスに「sqlite-net」を追加し、プロジェクトリファレンスで「SQLite for Windows Runtime (Windows 8.1)」と「Microsoft Visual C++ 2013 Runtime Package for Windows」をチェックし、ターゲットビルドをx86にしました。

どうすればこれを機能させることができますか?

4

2 に答える 2

9

SQLite には、DB 名だけでなく、DB を作成するためのパスが必要です

このようなことを試してください

string path = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, DATABASE_NAME);

_connection = new SQLite.SQLiteConnection(path)

お役に立てれば

于 2014-10-03T21:00:07.600 に答える