Xamarin将sqllite文件上传到Azure Blob存储中,sqlite .db3文件在Blob存储上为空

时间:2019-06-14 07:57:29

标签: xamarin

我正在尝试以Xamarin形式的iOS上传应用程序构建的本地数据库。本地数据库中有数据,应用程序可以很好地查看所有表和数据。

我想调查数据库,所以我将其上传到Azure Blob存储。

代码如下: 公共类BlobStorageService     {         只读静态CloudStorageAccount cloudStorageAccount = CloudStorageAccount.Parse(Constants.blogStorageConnectionString);         只读静态CloudBlobClient blobClient = cloudStorageAccount.CreateCloudBlobClient();

    public static async Task UploadFileToBlobStorage(string filePath)
    {
        if (!File.Exists(filePath))
            return;

        var fileName = Path.GetFileName(filePath);
        CloudBlobContainer container = blobClient.GetContainerReference("sqllitefiles");
        await container.CreateIfNotExistsAsync();

        BlobContainerPermissions permissions = await container.GetPermissionsAsync();
        permissions.PublicAccess = BlobContainerPublicAccessType.Container;  //TODO: disable this later.
        await container.SetPermissionsAsync(permissions);

        CloudBlockBlob blockBlob = container.GetBlockBlobReference(fileName);

        await blockBlob.UploadFromFileAsync(filePath);
    }
}

文件路径为: public static readonly string DatabasePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CaseNotesSQLite.db3");

数据库文件已成功上传,但是文件只有4KB,当我使用SQLLite Browser打开数据库文件时,根本没有数据,也没有表结构。

有人知道为什么吗?

0 个答案:

没有答案