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


public ObservableCollection<string> LessonUsers { get; set; }
            = new ObservableCollection<string>();
        public ICommand LoadCommand => new Command(async () => SearchUsers());

        string connString = "Host = localhost; Port = 5432; Username = postgres; Password = 142100; Database = postgres";

        string searchText;
        public string FindTextUser { get => searchText; set { searchText = value; SearchUsers(); } }
        async Task SearchUsers()
        {
            LessonUsers.Clear();

            using var conn = new NpgsqlConnection(connString);
            await conn.OpenAsync();

            var cmd = new NpgsqlCommand("SELECT * FROM users WHERE username ILIKE @search", conn);
            cmd.Parameters.AddWithValue("search", $"%{FindTextUser}%");
            var reader = await cmd.ExecuteReaderAsync();
            bool find = false;
            string user = "";
            while (await reader.ReadAsync())
            {
                find = true;
              
                user =
                    reader.GetString(1) + " " +
                    reader.GetString(2);

            }
            await Application.Current.MainPage.DisplayAlert(
                "test",
                user,
                "ok");
            if (!find) LessonUsers.Add
                    ("Don't find this users in my database");
        }