保存的用户对象有时为空,但在Windows phone 8.1 C#中有时工作正常

本文关键字:工作 phone 但在 对象 用户 保存 Windows | 更新日期: 2023-09-27 18:37:15

我的类函数遇到了问题。我调用一个函数,在该函数中,我调用另一个函数以获取保存的用户详细信息。我在用户对象中保存了详细信息以供进一步使用。但是用户对象有时变为空,有时在调试期间返回确切值....

这是我的类函数。

   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 对象。

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

保存的用户对象有时为空,但在Windows phone 8.1 C#中有时工作正常

这就是等待异步异步的工作方式。流不是同步的。将返回类型更改为任务,如下所示:

async Task Get_User_Detail_Event

并像这样调用该方法:

await Get_User_Detail_Event();