c# - Task <ObservableCollection <AppointmentItem >>不包含其中的定义

原文 标签 c# azure xamarin task observablecollection

我试图通过保存的日期筛选一个observablecollection。用户将使用日历视图选择日期。

public async Task RefreshItems(bool showActivityIndicator, bool syncItems)
        {
            using (var scope = new ActivityIndicatorScope(syncIndicator, showActivityIndicator))
            {

                var items = manager.GetAppointmentItemsAsync();


                CalendarVM vm = new CalendarVM();
                calendar.SetBinding(Calendar.DateCommandProperty, nameof(vm.DateChosen));
                calendar.SetBinding(Calendar.SelectedDateProperty, nameof(vm.DateSelected));
                calendar.BindingContext = vm;

                var filtered = items.Where(appointmentItem => appointmentItem.Date == SelectedDate);
            }
        }


这是AppointmentPage类的代码,其中包含用户选择的日期和数据。

  public async Task<ObservableCollection<AppointmentItem>> GetAppointmentItemsAsync(bool syncItems = false)
        {


            try
            {

                IEnumerable<AppointmentItem> items = await appointmentTable
                                        .ToEnumerableAsync();

                return new ObservableCollection<AppointmentItem>(items);

            }
            catch (MobileServiceInvalidOperationException msioe)
            {
                Debug.WriteLine(@"Invalid sync operation: {0}", msioe.Message);
            }
            catch (Exception e)
            {
                Debug.WriteLine(@"Sync error: {0}", e.Message);
            }
            return null;

        }


这是dataManger类中的代码,用于从数据库中检索数据。

目前,我收到此错误:


  错误CS1061'任务>'没有
  包含“ Where”的定义,没有扩展方法“ Where”
  接受类型的第一个参数
  可以找到“任务>”(您是
  缺少using指令或程序集引用?

最佳答案

您的以下代码行:

var items = manager.GetAppointmentItemsAsync();


返回一个显然不包含TaskWhere,这就是为什么会出现错误的原因。

请将此行更改为:

var items = await manager.GetAppointmentItemsAsync();


然后您将返回一个ObservableCollection<AppointmentItem>类型的集合,该集合应具有Where成员。

相关文章:

c# - 在Entity Framework 7 RC 1和ASP.NET MVC 6中播种初始数据。

c# - C#/Mono Console.In.ReadToEnd()停止过程

mongodb - 使用mongodb/mongo-go-driver和Azure CosmosDB的ModifiedCount和MatchedCount错误

android - Xamarin.Android EditText事件未在设备上触发

ios - 象征iOS崩溃转储:找不到符号

ios - 如何在UITableView中更改选定项的SeparatorColor

c# - 将List <T>定制为ListCustomMinIndexedForEach <T>的问题(从无关的实现中剥离)

c# - 绑定(bind)到派生集合的ListView不会更新(XAML/Windows 8)

asp.net-mvc - 应用程序池回收后,Azure云服务已死

azure - cspack行为与msbuild不同