WedX - журнал о программировании и компьютерных науках

обновить таблицу в мобильной службе Azure

How to update particular record in azure mobile Service.

For Example I have a table in azure called country having two columns

  • идентификатор_страны
  • название_страны

Если я хочу обновить запись с country_id=5 из США в Соединенные Штаты Америки. Как это сделать.

//Global Variable  
  private MobileServiceCollection<country, country> items;
        private IMobileServiceTable<country> todoTable = App.MobileService.GetTable<country>();
    class country
    {
    public string id { get; set; }
    public string country_name { get; set; }
    public int country_id { get; set; }
    }

private async void btnUpdate_Click(object sender, RoutedEventArgs e)
 {
var change = await todoTable
 .Where(todoItem => todoItem.country_name == tboxcName.Text)
    .ToListAsync();
  await todoTable.UpdateAsync(change);
    }

Приведенный выше код я попробовал из этого сообщения, но не обнаружил .


Ответы:


1

Возможно, вы захотите попробовать это:

private async void btnUpdate_Click(object sender, RoutedEventArgs e)
 {
var change = await todoTable
 .Where(todoItem => todoItem.id.Equals(tboxcName.Text))
    .ToListAsync();

    if(change != null){
        var toChange= change.First();
        toChange.country_name="United State of America";
          await todoTable.UpdateAsync(toChange);
    }
    else{
    // you have nothing to change, you might throw an exception
    }
    }

В текстовом поле вы должны ввести идентификатор, который хотите обновить, в вашем случае это 5. Затем я делаю запрос linq, выбирая все элементы с идентификатором «5», это дает мне список. Я проверяю, не пуст ли список, вы хотели бы угрожать случай, когда список пуст. Если он не нулевой, я беру первый элемент (так как вы находитесь в мобильных сервисах, поле id уникально в базе данных, поэтому вам не нужно угрожать этому граничному случаю (хотя, если вы действительно хотите быть уверенным, всегда лучше сделай это)). Первый элемент в списке будет иметь идентификатор = 5, поэтому мы меняем объект, обновляющий его название страны, на «Соединенные Штаты Америки» (в вашем случае вам не важно предыдущее значение, так как вы обновляете конкретный Я БЫ). Затем вы обновляете этот элемент. Затем API мобильного сервиса выдаст запрос на исправление, а база данных исправит его в соответствии с идентификатором объекта.

Надеюсь это поможет!

19.08.2015
  • Эй, извините, а какой идентификатор вашей страны? id или country_id? В противном случае просто замените todoItem.id на todoItem.country_id... 19.08.2015
  • Здравствуйте, хорошо, это должно быть хорошо, так как в этом случае они несколько эквивалентны. Не могли бы вы написать, что у вас есть в вашей базе данных? Какой у тебя ключ? Не могли бы вы поставить точку останова, чтобы увидеть, что находится внутри переменной изменения? 20.08.2015
  • Здравствуйте, я не понимаю, почему у вас в базе данных есть country_id и id. Что эти два поля должны представлять? Я не уверен, но это может быть проблемой, так как ваш код должен нормально работать 20.08.2015
  • Да ты прав. Я изменил таблицу, и код сработал. Большое спасибо. Ты действительно очень хороший человек. 20.08.2015

  • 2

    Попробуйте с этим кодом С#!

    private async void btnUpdate_Click(object sender, RoutedEventArgs e)
     {
       var filteredRecords = await todoTable.Where(
         todoItem => todoItem.country_id == 5)
         .ToListAsync();
    
       foreach (var item   in filteredRecords)
       {
         item.country_name="United States of America"; 
         await todoTable.UpdateAsync(item);
       }
     }
    
    18.08.2015
  • await todoTable.UpdateAsync(change); //**change** не распознается. когда я изменил change на item. до сих пор не работает. Неверный ответ мобильного сервиса. Запрос. 19.08.2015
  • Пожалуйста, измените только поле с country_id=5. Например, в SQL я должен написать следующее: «ОБНОВЛЕНИЕ страны SET имя_страны = Соединенные Штаты Америки, ГДЕ страна_ид = 5»; пожалуйста, ответьте на этот случай @JuanK 19.08.2015
  • Я знаю, что запрос должен быть таким: var filteredRecords = await todoTable.Where( todoItem => todoItem.country_id==5) .ToListAsync(); Но не знаю, как обновить эту запись. 19.08.2015
  • после редактирования по-прежнему отображается "Microsoft.WindowsAzure.MobileServices.MobileServiceInvalidOperationException" произошло в mscorlib.ni.dll, но не было обработано в пользовательском коде. Дополнительная информация: Ошибка: неверный запрос. 19.08.2015
  • Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]