保存的用户对象有时为 Null 但有时在 Windows phone 8.1 C# 中运行完美

Saved User object is Null sometimes but works perfect sometime in Windows phone 8.1 C#

我的 Class 功能出现问题。我调用一个函数,并在该函数中调用另一个函数来获取保存的用户详细信息。我在用户对象中保存了详细信息以供进一步使用。但是用户对象有时会变为 null,有时 return 在调试期间的精确值....

这是我的 Class 函数..

   public async void Save_Data_in_Log(string EventName, string completeUrl)
    {

        Get_User_Detail_Event();
        //Above function is another function to get User detail in   savedUserObject. 

        UserId = savedUserObject.id;
        device_id_string = savedUserObject.deviceId;
        status = "System Event";
        device_type = "Windows";

        DateTime universalTime = DateTime.UtcNow;
        string universalformate = universalTime.ToString("yyyy MM dd, HH:mm:ss");

        string data_to_save_in_log_File = serial_No + " | " + universalformate + " | " + UserId + " | " + device_id_string + " | " + device_type + " | " + status + " | " + EventName + " | " + completeUrl;



    }


 private async void Get_User_Detail_Event()
    {
        if (settingsto_save_detail.LoadSetting("currentUser") != null)
        {
            savedUserObject = await settingsto_save_detail.RetrieveObjectAsync<UserDetail>("currentUser");
        }
    }

为什么这个函数不提供准确的用户详细信息。?这有时效果很好,但主要是给 Null 对象。

请指导我如何解决这个问题。谢谢

这就是 await-async 异步的工作原理。流程不同步。 像这样将 return 类型更改为任务:

async Task Get_User_Detail_Event

并像这样调用方法:

await Get_User_Detail_Event();