Witajcie! :)
problemy z kontrolkami mam już skończone. Ogarniam już triggery, datatriggery i multitriggery. Teraz biorę się za połączenie z bazą danych sql.
- Utworzyłem database na stronie www.cba.pl.
- Kolejnym krokiem według jakiegoś tematu z tego forum było pobranie mySqlConnector.
- Następnie wziąłem się za pisanie:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="25"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button Name="hConnect" Content="Połącz z bazą danych" Click="hConnect_Click"/>
<DataGrid Name="hData" Grid.Row="1" ItemsSource="{Binding}"/>
</Grid>
</Window>
oraz część logiczna:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using MySql.Data.MySqlClient;
using System.Data;
namespace WpfApplication1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Connect(string server, string db, string id, string pass)
{
string mojePolaczenie =
"SERVER=" + server + ";" +
"DATABASE=" + db + ";" +
"UID=" + id + ";" +
"PASSWORD=" + pass + ";";
string sql = "SELECT * FROM Przystanek";
MySqlConnection polaczenie = new MySqlConnection(mojePolaczenie);
try
{
polaczenie.Open();
using (MySqlCommand cmdSel = new MySqlCommand(sql, polaczenie))
{
DataTable dt = new DataTable();
MySqlDataAdapter da = new MySqlDataAdapter(cmdSel);
da.Fill(dt);
hData.ItemsSource = dt.DefaultView;
}
}
catch
{
MessageBox.Show("Błąd logowania do bazy danych MySQL", "Błąd");
}
polaczenie.Close();
}
private void hConnect_Click(object sender, RoutedEventArgs e)
{
Connect("gswidwa.cba.pl", "gswidwa", "jakislogin", "jakieshaslo");
}
}
}
Niestety po kliknięciu w przycisk połącz otrzymuję wyjątek i wyskakuje mi MessageBox o niepowodzeniu. Co mogłem wprowadzić źle?
Login i hasło jak rozumiem są do mojej bazy danych, IP może być nazwa domeny, a database się zgadza...