【问题标题】:How to use Azure Mobile App service with existing SQL database如何将 Azure 移动应用服务与现有 SQL 数据库一起使用
【发布时间】:2016-05-25 15:28:45
【问题描述】:

我已经阅读了许多演示如何使用 Azure 移动服务的文章和教程,但是我对很多事情都不清楚。

我有一个使用 Azure SQL 数据库并随 Azure 发布的现有 Web 应用程序。我正在尝试将已经创建的数据库集成到我正在开发的 Xamarin Android 应用程序中。

我对以下事情感到困惑。

  1. 是否需要更改 .Net 后端才能在 Xamarin 应用程序中使用数据库表?在我看来,我不需要这样做,因为 Xamarin 应用程序与 SQL 数据库通信,而不是 .Net 应用程序。

  2. 数据如何存储到 SQL 表中?我是否只是在我的 Xamarin 应用程序中引用移动服务,它将在 SQL 数据库和我的应用程序之间建立一座桥梁,还是我需要先创建表或从数据库中导入现有表?

  3. Web 应用程序当前部署到 Azure Web 服务。需要部署到Mobile App服务吗?

如果有人能帮助我解决这些问题,我将不胜感激。

【问题讨论】:

    标签: xamarin azure-web-app-service azure-mobile-services


    【解决方案1】:

    您的移动应用未直接与您的 SQL 数据库通信。它很可能通过 Azure 应用服务 - 这是一个支持 Web 的中间件,它将 SQL 数据库中的表投影到 OData 源。因此,您拥有三部分 - SQL 数据库、Azure 应用服务和您的客户端。

    1) 是的,您需要更新 ASP.NET 后端以支持您的数据库表。如果这是一个现有的数据库,那么您还需要更新您的数据库以支持移动投影。我为此写了一篇博客:https://shellmonger.com/2016/05/11/30-days-of-zumo-v2-azure-mobile-apps-day-19-asp-net-table-controllers/,但您可能希望从该系列的早期开始。

    2) 将 Azure 移动客户端添加到 Xamarin 应用程序 - 这会协调客户端和后端之间的数据传输。您可以在此处找到我推荐的教程:https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-xamarin-android-get-started/ - 您也可以在此处阅读 HOWTO:https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-dotnet-how-to-use-client-library/ - 该教程和 HOWTO 涵盖了离线和在线数据访问场景。

    3) 如果您使用的是新门户 (portal.azure.com),那么移动应用程序和 Web 应用程序之间确实没有区别。移动应用程序只是一个 Web 应用程序,在您的 ASP.NET(或 Node.js)后端代码中部署了特定的 SDK,并具有连接的数据库。细微的区别是,如果您创建一个移动应用程序,然后单击 Quickstarts(在设置中)将为您提供移动快速启动;如果您对 Web 应用程序执行相同操作,则单击 Quickstarts 将使您获得 Web 快速启动。

    【讨论】:

    • 嗨。感谢您的出色回复。我以前没有遇到过这些文章。我一定会看看的。 Azure 移动服务已迁移到 Azure 移动应用。这很不方便,因为我无法从管理门户创建应用程序。我对 azure portal 不是很熟悉,所以我做事有点困难。例如添加表格。
    • 关于你的最后一点,如果我理解正确的话,网络应用程序和移动应用程序之间的唯一区别是网络应用程序提供了一个快速的网络启动,而移动应用程序提供了一个快速启动项目测试应用程序?
    • 有点正确。 Web 应用程序和移动应用程序之间的唯一区别是快速启动体验。
    • @AdrianHall 您好-所有这些指南都令人困惑。我在 Azure 中有一个现有的 SQL 数据库,我想创建一个全新的 Xamarin 应用程序(将在 android 上运行),它还能够访问和更新数据库。以下几行是我需要的吗? c-sharpcorner.com/article/…c-sharpcorner.com/article/…
    • 在第一部分中为您的博客文章添加多个 +++。在转换现有数据库时,我真的想了解 Id 字段需要是什么。这是我默认值的黄金。默认 (CONVERT([NVARCHAR](255),NEWID(),(0))) NOT NULL,
    猜你喜欢
    • 2017-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-15
    • 1970-01-01
    相关资源
    最近更新 更多