Baza Danych w C# zapomina dane wprowadzone w aplikacji

0

Witam,
Tak jak w temacie. Mam kłopot ponieważ napisałem sobie prostą aplikacje która wykorzystuje bazę danych w której jest tabela Countries.
Za pomocą kwerendy przed uruchomieniem mogę modyfikować dane i bezproblemowo je odczytać. Natomiast dane wprowadzane przeze mnie podczas trwania aplikacji są zapamiętywane tylko na czas jej działania, a później ich już nie ma.

Kod Xaml:

<Window.Resources>
        <local:ConferenceDataBaseDataSet x:Key="ConferenceDataSet"/>
        <CollectionViewSource x:Key="countryViewSource"  Source="{Binding Countries,Source={StaticResource ConferenceDataSet}}"/>
    </Window.Resources>
    <Grid DataContext="{StaticResource countryViewSource}">
        <TextBox x:Name="dataTextBox" HorizontalAlignment="Left" Height="23" Margin="32,39,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
        <Button Content="Button" HorizontalAlignment="Left" Margin="174,39,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/>
        <ListBox x:Name="dataListBox" HorizontalAlignment="Left" Height="100" Margin="32,105,0,0" VerticalAlignment="Top" Width="217"/>
    </Grid>
 

Kod C#

 
  SqlConnection connection;
        string connectionString;

        public MainWindow()
        {
            InitializeComponent();
            connectionString = ConfigurationManager.ConnectionStrings["MUNDatabase.Properties.Settings.ConferenceDataBaseConnectionString"].ConnectionString;
        }

        public void PopulateCountries()
        {
            using (connection = new SqlConnection(connectionString))
            using(SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Countries",connection))
            {
                DataTable countryTable = new DataTable();
                adapter.Fill(countryTable);


                dataListBox.SelectedValuePath = "Id";
                dataListBox.DisplayMemberPath = "Name";

                dataListBox.ItemsSource = countryTable.DefaultView;
            }
        }

        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            PopulateCountries();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
                string query = "INSERT INTO Countries VALUES (0,0,0,@CountryName)";

                using(connection = new SqlConnection(connectionString))
                using (SqlCommand command = new SqlCommand(query, connection))
                {
                    connection.Open();

                    command.Parameters.AddWithValue("@CountryName", dataTextBox.Text);
                    command.ExecuteScalar();
                  
                  
                    connection.Close();

                }

                PopulateCountries();
        }

Dodam tylko ,że posiłkowałem się tym poradnikiem:
Odwzorowałem chyba wszystko więc nie mam pojęcia czemu ta baza nie zapamiętuje moich poleceń...

0

A gdzie znajduje się ta baza? Pewno w pliku, który tworzony jest na nowo przy każdej kompilacji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1