将 Xamarin 应用注册页面连接到 MySQL 的 Azure 数据库

Posted

技术标签:

【中文标题】将 Xamarin 应用注册页面连接到 MySQL 的 Azure 数据库【英文标题】:connect Xamarin app registration page to azure database for MySQL 【发布时间】:2021-11-13 01:29:17 【问题描述】:

我正在尝试构建一个 Xamarin 移动应用程序并希望使用 Azure 数据库 for mysql 作为应用程序的数据库。

我已经为我的注册页面创建了设计。 需要有关如何为 MySQl 创建 Azure 数据库以及如何将我的应用程序与其连接的帮助。 我已经读到需要一个 API 来连接应用程序和数据库。 在互联网上找不到任何可以说明如何执行上述所有操作的示例。

RegistrationPage.XAML

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="VeggiesUI.Views.RegistrationPage"
              Shell.NavBarIsVisible="False"
             Title="Registration"
             BackgroundImageSource="OIP.jpg">

    <StackLayout Margin="20,30,20,0" >
        
        <Entry Placeholder="Enter First Name"
                MaxLength="30" 
                Margin="5,0,5,10"/>

        <Entry Placeholder="Enter Last Name"
               MaxLength="30" 
               Margin="5,0,5,10"/>

        <Entry Placeholder="Enter Email"
               MaxLength="30" 
               Margin="5,0,5,10"/>

        <Entry Placeholder="Enter Password"
               MaxLength="15" 
               Margin="5,0,5,10"/>

        <Entry Placeholder="Confirm Password"
               MaxLength="15" 
               Margin="5,0,5,5"/>

        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="0.10*" />
                <ColumnDefinition Width="0.90*" />
            </Grid.ColumnDefinitions>
            
            <CheckBox IsChecked="False"></CheckBox>
            <Label Grid.Column="1"
                   Text=" Accept Ts and Cs."
                   Margin="0,5,5,0"/>
        </Grid>

        <Grid ColumnDefinitions="*,*">
            <Button Text="Register"
                        Clicked="OnSaveButtonClicked" 
                        BackgroundColor="LightGreen" 
                        TextColor="Black"
                        Margin="0,10,5,0"/>
            <Button Grid.Column="1"
                        Text="Clear"
                        BackgroundColor="LightGreen"
                        TextColor="Black"
                        Clicked="OnDeleteButtonClicked"
                        Margin="0,10,5,0"/>
        </Grid>

        <Button Text="Login Instead"
                Clicked="OnButtonClicked"
                TextColor="Blue"
                BackgroundColor="Transparent"
                BorderWidth="0"
                CornerRadius="0"
                WidthRequest="150"
                FontSize="Medium"
                />

    </StackLayout>
    
</ContentPage>

RegistrationPage.XAML.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;
using Xamarin.Forms.Xaml;

namespace VeggiesUI.Views

    [XamlCompilation(XamlCompilationOptions.Compile)]
    public partial class RegistrationPage : ContentPage
    
        public RegistrationPage()
        
            InitializeComponent();
        

        private void OnSaveButtonClicked(object sender, EventArgs e)
        

        

        private void OnDeleteButtonClicked(object sender, EventArgs e)
        

        

        private async void OnButtonClicked(object sender, EventArgs e)
        
            await Shell.Current.GoToAsync("//LoginPage");
        
    

我是 Xamarin 和 Azure 的新手。

解决方案内容

【问题讨论】:

【参考方案1】:

· 首先创建 Azure 移动服务(具有所需后端语言的数据库、服务器和表)

· 确保在项目中添加 Azure 移动 SDK 包。

· 有一个 itemTable.cs 类来定义要添加到数据库中的对象的属性

· 定义一个 Itemservice.cs 文件,您可以在其中添加应用程序与 Azure 移动服务的所有交互

更多信息请关注本文How to build a Xamarin App connected to Azure - Microsoft Tech Community

【讨论】:

嗨 Abhishek,门户网站上没有移动应用程序。 Azure 移动服务已被弃用,取而代之的是 Azure 移动应用 azure.microsoft.com/en-us/services/app-service/mobile

以上是关于将 Xamarin 应用注册页面连接到 MySQL 的 Azure 数据库的主要内容,如果未能解决你的问题,请参考以下文章

将用户记录插入MYSQL表

通过USB连接到Xamarin.Android应用程序与网站进行通信

为啥我可以将 java 应用程序连接到 MySQL DB 但无法执行查询? [复制]

Visual Studio - Xamarin,创建连接到数据库的应用程序

表单不会将数据保存到 mySQL 表中

将 WCF 连接到 Xamarin.Android 项目时出现连接被拒绝错误