当前,我正在添加用户药物,用户可以选择是否添加诊断来添加药物,根据用户当前添加的“诊断”使用下拉列表收集诊断。
当我填写表格并选择诊断时,数据已成功添加到azure中,并且在我的下一页显示已添加药物的列表视图中,它成功显示了已添加的药物以及诊断信息。
如果我填写表格并将诊断保留为空白,则数据成功过帐到Azure,诊断ID为空白,但是在我的下一个显示已添加药物的列表视图的下一页上,它却没有显示。
如果诊断为空,则数据不会出现在列表视图中。
/// <summary>
/// Gets User Medication list
/// </summary>
/// <returns>The user meds.</returns>
async public Task GetUserMedsMain()
{
MedicationList.ItemsSource = null;
UserMedTimes.Clear(); //Clears the list before calling API (prevents duplication)
main.Children.Add(MedicationList);
main.Children.Remove(NoMeds);
if (!CrossConnectivity.Current.IsConnected)
{
main.Children.Remove(MedicationList);
main.Children.Add(NoMeds);
NoMeds.Text = "No Internet Connection - Please check your connection";
NoMeds.Margin = new Thickness(35, 35, 20, 20);
BusyIndicator.IsRunning = false;
}
else
{
BusyIndicator.IsRunning = true;
//var usermed = await medicinemanager.CurrentClient.InvokeApiAsync<IEnumerable<usermedication>>("getusermednamejoin?userid=" + Helpers.Settings.UserKey + "", System.Net.Http.HttpMethod.Get, null);
try
{
var usermeddosagetime = await medicinemanager.CurrentClient.InvokeApiAsync("getusermednamejoin?userid=" + Helpers.Settings.UserKey, null, HttpMethod.Get, await App.LoadAPIKeyAsync(), null);
var responseContent = await usermeddosagetime.Content.ReadAsStringAsync();
var user = JsonConvert.DeserializeObject<ObservableCollection<UserMedDosagePayLoad>>(responseContent);
//var usermeddosagetime = await medicinemanager.CurrentClient.InvokeApiAsync<IEnumerable<UserMedDosagePayLoad>>("getusermeddosagetime?userid=" + Helpers.Settings.UserKey + "", HttpMethod.Get, API, System.Threading.CancellationToken.None);
//null, System.Net.Http.HttpMethod.Get, API, System.Threading.CancellationToken.None);
Debug.WriteLine("UserMedDosageTime" + usermeddosagetime);
foreach (UserMedDosagePayLoad item in user)
{
UserMedTimes.Add(item);
}
}
catch (Exception ex)
{
Debug.WriteLine(ex.ToString());
}
目前,我正在使用azure中的API调用填充列表视图。