Вот соответствующий код для моей страницы входа:< /p>
Код: Выделить всё
using System;
using MySql.Data.MySqlClient;
using Microsoft.Maui.Controls;
namespace Zakazivanje.Pages
{
public partial class LogInPage : ContentPage
{
public LogInPage()
{
InitializeComponent();
}
private async void btnLogIn_Clicked(object sender, EventArgs e)
{
try
{
using (MySqlConnection conn = new MySqlConnection(MainPage.connectionString))
{
try
{
await conn.OpenAsync();
string email = entEmail.Text;
string secretKey = entPassword.Text;
string query = "SELECT COUNT(*) AS count_persons " +
"FROM person " +
"WHERE email = @Email " +
"AND secret_key = @SecretKey";
MySqlCommand cmd = new MySqlCommand(query, conn);
cmd.Parameters.AddWithValue("@Email", email);
cmd.Parameters.AddWithValue("@SecretKey", secretKey);
object result = await cmd.ExecuteScalarAsync();
if (result != null && result != DBNull.Value)
{
int countPersons = Convert.ToInt32(result);
if (countPersons > 0)
{
labTitle.Text = "aga"; // Found matching person
}
else
{
labTitle.Text = "aha"; // No matching person
}
}
else
{
labTitle.Text = "Query returned null or empty result."; // Handle no result scenario
}
}
catch (MySqlException ex)
{
labTitle.Text = $"MySQL Error: {ex.Message}";
Console.WriteLine($"MySQL Error: {ex.Message}");
}
catch (Exception ex)
{
labTitle.Text = $"Error: {ex.Message}";
Console.WriteLine($"Error: {ex.Message}");
}
}
}
catch (MySqlException mysqlEx)
{
labTitle.Text = $"MySQL Error: {mysqlEx.Message}";
Console.WriteLine($"MySQL Error: {mysqlEx.Message}");
}
catch (TypeInitializationException tieEx)
{
labTitle.Text = $"Type Initialization Error: {tieEx.Message}";
Console.WriteLine($"Type Initialization Error: {tieEx.Message}");
}
catch (Exception ex)
{
labTitle.Text = $"General Error: {ex.Message}";
Console.WriteLine($"General Error: {ex.Message}");
}
}
}
}
Сведения о среде:MySQL.Data: 8.4.0
System.Data.SqlClient: 4.8.6
.NET: 7.0
Хост базы данных: FreeSQLDatabase
Соединение с базой данных MySQL работает в Windows, но не работает на Android. Я проверил, что у приложения есть доступ к Интернету на Android.
Дважды проверил строку подключения и убедился, что она верна.
Убедился, что приложение имеет необходимые разрешения на доступ к Интернету на Android.
Приложение ориентировано на .NET 7.0.
База данных размещена в Интернете и доступна из других приложений и платформ.
Кто-нибудь сталкивался с проблемой подобная проблема или есть какие-либо идеи о том, что может быть причиной проблемы? Любая помощь или предложения будут очень признательны!
Подробнее здесь: https://stackoverflow.com/questions/786 ... on-android
Мобильная версия