API, связывающий базу данных с проектом MVC и мобильным приложением Xamarin - PullRequest
0 голосов
/ 25 сентября 2018

Я новичок в Xamarin, я использую VS 2017 Enterprise с последними обновлениями Xamarin.

Я хочу добавить API, чтобы БД могла взаимодействовать как с моим мобильным приложением, так и с проектом MVC.

Я создал кроссплатформенный бланк, проект .NET Standard.

Я добавил новую папку в решение, и в этой папке появился класс для написания моего кода RestAPI.

При написании кода я использовал HttpClient, но он выдает ошибку, спрашивающую,

отсутствует сборка или ссылка.

Как мне написать код для моего REstApi, если я не могу использовать HttpClient?

ИЛИ есть ли лучший способ, позволяющий моей Db взаимодействовать как с моим проектом MVC, так и с мобильным приложением?

Я опубликую и свой проект MVC, и мобильное приложение в Azure.Спасибо

1 Ответ

0 голосов
/ 25 сентября 2018

Во-первых

Для ошибки, которая появляется: missing an assembly or reference.

HttpClient живет в пространстве имен "System.Net.Http".

Вам нужно будет добавить: using System.Net.Http;

как указано здесь


во-вторых

естьлучший способ позволить вашей БД общаться с вашим проектом MVC и мобильным приложением ?

да есть лучший способ после публикацииВаш проект MVC,

, который вы можете использовать Мобильный клиент Azure .

  • шаг 1

Открыть«Консоль диспетчера пакетов» и введите

Install-Package Microsoft.Azure.Mobile.Client -Version 4.0.2

или последнюю версию можно получить из Azure Mobile Client SDK

Эта библиотека предоставляет функции для создания мобильных приложений Windows и Xamarin, которые подключаются к мобильным приложениям Azure

  • шаг2

asДопустим, у вас есть класс с именем «пользователь», и вы хотите читать, вставлять, обновлять и удалять данные

. Посмотрите на следующий пример кода:

using Microsoft.WindowsAzure.MobileServices;
using System.Collections.ObjectModel;
using System.Threading.Tasks;

 public class User {/*....*/ }


  public class AzureServices
  {
      private static readonly string url = "http://xxxxx.azurewebsites.net";

      /*
       * The Azure Mobile Client SDK provides the MobileServiceClient class, 
       * which is used by a Xamarin.Forms application to access the Azure Mobile Apps instance
      */

      public MobileServiceClient Client;
      public IMobileServiceTable<User> UserTable;

      public AzureServices()
      {
          /* 
           * When the MobileServiceClient instance is created,
           * an application URL must be specified to identify the Azure Mobile Apps instance.
          */

          Client = new MobileServiceClient(url);

          //calling the GetTable method on the MobileServiceClient instance, which returns a IMobileServiceTable<User> reference.
          UserTable = Client.GetTable<User>();
      }

      // Querying Data
      public async Task<ObservableCollection<User>> GetAllUsers(bool sync = false)
      {
          var userList = await UserTable.ToEnumerableAsync();
          return new ObservableCollection<User>(userList);
      }
      //Inserting Data
      public async Task AddUser(User item)
      {
          await UserTable.InsertAsync(item);
      }
      // Updating Data
      public async Task UpdateUser(User item)
      {
          await UserTable.UpdateAsync(item);
      }
      // Deleting Data
      public async Task DeleteUser(User item)
      {
          await UserTable.DeleteAsync(item);
      }

  }

Для получения дополнительной информации посетите Мобильное приложение Azure

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...