Я написал весь код, и нет ошибок, за исключением случаев, когда я go запускаю его, он говорит следующее:
"Visual Studio не может начать отладку, потому что цель отладки 'C: Отсутствует \ Users \ Smith \ source \ repos \ Population_Database \ Population_Database \ bin \ Debug \ Population_Database.exe '. Постройте проект и повторите попытку или установите свойства OutputPath и AssemblyName соответствующим образом, чтобы указать правильное расположение для целевой сборки. "
В учебнике говорится следующее:
В папке Chap11 примеров программ вы найдете файл базы данных с именем PopulationDB.mdf. В базе данных есть таблица с именем City. Таблица City имеет следующие столбцы: Имя столбца Тип данных City nvarchar (50) Первичный ключ Поплавок населения В столбце City хранится название города, а в столбце Population - население этого города. В базе данных уже введено 20 строк. Создайте приложение, которое подключается к базе данных PopulationDB.mdf и позволяет пользователю выполнять следующие действия: • Использовать элементы управления с привязкой к данным, чтобы добавлять новые строки в базу данных, изменять существующие строки и удалять строки. • Сортировка списка городов по населению в порядке возрастания. • Сортировка списка городов по населению в порядке убывания. • Сортировка списка городов по названию. • Получить общее население всех городов. • Получить среднюю численность населения всех городов. • Получить наибольшее население. • Получите наименьшее население.
Вот мой код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Population_Database
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void newrow_Click(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlDataAdapter adapter = new SqlDataAdapter("select * from City", cn);
SqlCommandBuilder cmdb = new SqlCommandBuilder(adapter);
DataSet ds = new DataSet("City");
adapter.Fill(ds, "City");
DataRow row = ds.Tables["City"].NewRow();
row["City"] = textBox1.Text;
row["Population"] = textBox2.Text;
ds.Tables["City"].Rows.Add(row);
adapter.Update(ds, "Income");
cn.Close();
MessageBox.Show("Details Entered Sucessfully ....");
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("Select * from City ORDER BY Population ASC", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
String tot;
comboBox1.SelectedItem = tot.ToString();
}
}
private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("Select * from City ORDER BY Population DESC", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
String tot;
comboBox2.SelectedItem = tot.ToString();
}
}
private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("Select City from City ", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
String tot;
comboBox1.SelectedItem = tot.ToString();
}
}
private void textBox3_TextChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("select SUM(Population) from City", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
double tot;
tot = Convert.ToDouble(sdr.GetSqlValue(0).ToString());
textBox3.Text = tot.ToString();
}
}
private void textBox4_TextChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("select AVG(Population) from City", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
double tot;
tot = Convert.ToDouble(sdr.GetSqlValue(0).ToString());
textBox4.Text = tot.ToString();
}
}
private void textBox5_TextChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("select MAX(Population) from City", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
double tot;
tot = Convert.ToDouble(sdr.GetSqlValue(0).ToString());
textBox5.Text = tot.ToString();
}
}
private void textBox6_TextChanged(object sender, EventArgs e)
{
SqlConnection cn = new SqlConnection();
cn.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\PopulationDB.mdf;Integrated Security=True;User Instance=True";
cn.Open();
SqlCommand cmd = new SqlCommand("select MIN(Population) from City", cn);
SqlDataReader sdr = cmd.ExecuteReader();
while (sdr.Read())
{
double tot;
tot = Convert.ToDouble(sdr.GetSqlValue(0).ToString());
textBox6.Text = tot.ToString();
}
}
}
}
Что мне не хватает?