c# - 异步文件保存等待不 "Await"

标签 c# asynchronous async-await win-universal-app

如果这是骗人的,我深表歉意。我找不到任何专门针对我的问题的内容。我正在尝试使用“await SaveAsync”保存文件。我收到此错误访问被拒绝。 (来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))我假设它是因为它试图在操作完成之前继续前进......但它不应该因为我使用了“等待”而等待吗?

这是我的代码

try
        {
            if (CurrentFile == null || !_existingDocument)
            {
                await _generateDoc();
                return;
            }

            var docGen = new CustDocument(_inputs);

            docGen.Save(CurrentFile);
        }
        catch (Exception ex)
        {

            throw;
        }

还有我的方法

 private async Task<StorageFile> _generateDoc()
    {

        var docGen = new CustDocument(_inputs);
        var savePicker = new FileSavePicker();

        savePicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
        savePicker.FileTypeChoices.Add("dptx File", new List<string>() {".dptx"});
        savePicker.SuggestedFileName = _inputs.CustomerName.Replace(" ", "").Trim();

        var file = await savePicker.PickSaveFileAsync(); // Error here

        docGen.Save(file);
        return file;
    }

堆栈轨道(不多)

   at Windows.Storage.Pickers.FileSavePicker.PickSaveFileAsync()

在 MdTool.ViewModel.RmViewModel.<_generateDoc>d__6.MoveNext()

最佳答案

找到了! 这里 Using FileSavePicker with MessageDialog's IUICommand event

没想到和对话框有关。对于所有回复的人...感谢您的帮助

关于c# - 异步文件保存等待不 "Await",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30399294/

相关文章:

java - 等待一组异步Java调用的轻量级方式

javascript - Node js,函数不等待响应

c# - 如何使用 LINQ 异步等待任务列表?

c# - body 最大高度;纵横比;飞涨

c# - NHibernate SQLFunction 分组依据

C# 在winform上显示来自sql server的表

c# - AsParallel() 或异步/等待

c# - 如何在 Entity Framework Core 中配置多对多关系

javascript - AngularJS 等待单个异步调用

c# - 需要帮助检查用户并将其添加到多个异步角色