Можно ли выполнить двустороннюю привязку данных в XAML напрямую с объектами, созданными генератором кода службы клиента C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Можно ли выполнить двустороннюю привязку данных в XAML напрямую с объектами, созданными генератором кода службы клиента

Сообщение Anonymous »

Возможно ли или практично подключить двустороннюю привязку данных в XAML непосредственно к RESTApi, созданному Visual Studio на основе файла метаданных OpenApi. Например, Visual Studio создает клиент REST на основе файла OpenApi или метаданных, опубликованных по URL-адресу.

Код: Выделить всё

MyRESTClient _client = new MyRESTClient("http://localhost", new System.Net.Http.HttpClient());
Возможно, это появится в верхней части какой-либо модели представления. Предположим, мы работаем с относительной конечной точкой REST, например:

/api/v1/Kitten

Реализация метода Get, не принимающего параметров, возвращает всех котят. Генератор RESTClient Visual Studio создаст полный REST API для объектов, доступных на всех конечных точках. Итак, теперь, предположив, что пространство имен такое же, как и у приложения, у нас есть объект Kittens.
Я могу определить в ViewModel объект Kittens с именем _kittens следующим образом:

Код: Выделить всё

private ObservableCollection _kittens;
Затем я могу получить всех котят и преобразовать возвращенную ICollection, полученную в результате вызова REST, в ObservableCollection следующим образом:

Код: Выделить всё

_kittens = new ObservableCollections(await _client.KittenAllAsync());
Отлично, теперь у меня есть двусторонняя коллекция объектов котят с привязкой к данным, и пользовательский интерфейс может делать все, что угодно. С помощью новой ObservableCollection я также могу зарегистрировать обработчики событий, необходимые мне для реагирования на события добавления/удаления/перемещения в коллекции, и выполнить соответствующие вызовы REST для обновления записей в удаленном хранилище данных.Мой вопрос заключается в следующем:
Можно ли также получать события об изменениях в полях любого данного котенка, чтобы я мог также выполнять соответствующие вызовы REST для простого обновления котёнок или, ещё лучше, единственное свойство этого котёнка?

Подробнее здесь: https://stackoverflow.com/questions/790 ... s-generate
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»