Загрузка данных



using Intents;
using Security;
using System.ComponentModel;

namespace MauiApp1;

    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }
    private string connectionString = "Data Source=\"stud-mssql.sttec.yar.ru, 38325\"; Persist Security Info=false; User ID = user300_db; Password = user300; Pooling = false; MultipleActiveResultSets=false;Encrypt=true;TrustServerCertificate=true;"; 
    private async void OnLoginClicked(object sender, EventArgs e)
    {
        string username = UsernameEntry.Text;
        string password = PasswordEntry.Text;

        // Сбрасываем ошибки
        ErrorBorder.IsVisible = false;
        LoginButton.IsEnabled = false;
        LoginButton.Text = "Вход...";

        try
        {
            using (var connection = new SqlConnection(connectionString))
            {
                connection.Open();

                string sql = "SELECT FullName, Role, [Group] FROM users WHERE Username = @Username AND Password = @Password";

                using (var command = new SqlCommand(sql, connection))
                {
                    command.Parameters.AddWithValue("@Username", username);
                    command.Parameters.AddWithValue("@Password", password);

                    using (var reader = command.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            string fullName = reader["FullName"].ToString();
                            string role = reader["Role"].ToString();
                            string group = reader[""].ToString();
                            if(Application.Current?.MainPage is AppShell shell)
                            {
                                shell.SetUserInfo(fullName, role);
                            }
                            await Navigation.PushAsync(new ProfilePage());
                            await DisplayAlert("Успешный вход",$"Добро пожаловать, {fullName}!","ОК");
                        }
                        else
                        {
                            ErrorLabel.Text = "Неверный логин или пароль. Проверьте правильность введенных данных.";
                            ErrorBorder.IsVisible = true;
                        }
                    }
                }
            }
        }
        catch (Exception ex)
        {
            ErrorLabel.Text = $"Ошибка подключения к системе: {ex.Message}";
            ErrorBorder.IsVisible = true;
        }
        finally
        {
            LoginButton.IsEnabled = true;
            LoginButton.Text = "Войти";
        }
    }
    }










<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MauiApp1.MainPage">

    <ScrollView Padding="20">
        <StackLayout Spacing="10">

            <Label Text="Регистрация почтового ящика" FontSize="20" HorizontalOptions="Center"/>


            <Entry x:Name="UsernameEntry" Placeholder="Имя пользователя" />


            <Label Text="Дата рождения" />
            <DatePicker x:Name="BirthDatePicker" />

            
            <Entry x:Name="CityEntry" Placeholder="Город" />

           
            <Label Text="Пол" />
            <StackLayout Orientation="Horizontal" Spacing="20">
                <RadioButton x:Name="MaleRadio" Content="Мужской" GroupName="Gender" />
                <RadioButton x:Name="FemaleRadio" Content="Женский" GroupName="Gender" />
            </StackLayout>


            <Entry x:Name="PasswordEntry" Placeholder="Пароль" IsPassword="True" />

           
            <Entry x:Name="RepeatPasswordEntry" Placeholder="Повторите пароль" IsPassword="True" />

            
            <Picker x:Name="SecurityQuestionPicker" Title="Выберите вопрос">
                <Picker.Items>
                    <x:String>Ваш первый автомобиль?</x:String>
                    <x:String>Название вашего первого питомца?</x:String>
                    <x:String>Ваш школьный учитель?</x:String>
                </Picker.Items>
            </Picker>

            
            <Entry x:Name="SecurityAnswerEntry" Placeholder="Ответ" />

            
            <Button Text="Зарегистрироваться" BackgroundColor="#0078D7" TextColor="White" Clicked="OnRegisterClicked"/>

        </StackLayout>
    </ScrollView>
</ContentPage>