У меня есть этот метод, который должен вставить данные в свою базу данныхвызова метода из другого класса C#
public Zakaznik_Mapper()
{
public bool Insert(int ID_zakaznik, String Name, String LastName, String Login, String Password, int Number, String Email, String Adress)
{
try
{
conn.Open();
tran = conn.BeginTransaction(System.Data.IsolationLevel.Serializable);
SqlCommand insertCommand = new SqlCommand("INSERT INTO Zakaznik VALUES (@ID_zakaznik, @Name, @LastName, @Login, @Password, @Number, @Email, @Adress);", conn, tran);
insertCommand.Parameters.Add(new SqlParameter("@ID_zakaznik", SqlDbType.Int) { Value = ID_zakaznik });
insertCommand.Parameters.Add(new SqlParameter("@Name", SqlDbType.VarChar) { Value = Name });
insertCommand.Parameters.Add(new SqlParameter("@LastName", SqlDbType.VarChar) { Value = LastName });
insertCommand.Parameters.Add(new SqlParameter("@Login", SqlDbType.VarChar) { Value = Login });
insertCommand.Parameters.Add(new SqlParameter("@Password", SqlDbType.VarChar) { Value = Password });
insertCommand.Parameters.Add(new SqlParameter("@Number", SqlDbType.Int) { Value = Number });
insertCommand.Parameters.Add(new SqlParameter("@Email", SqlDbType.VarChar) { Value = Email });
insertCommand.Parameters.Add(new SqlParameter("@Adress", SqlDbType.VarChar) { Value = Adress });
insertCommand.ExecuteNonQuery();
tran.Commit();
conn.Close();
return true;
}
catch (SqlException e)
{
tran.Rollback();
conn.Close();
Console.WriteLine(e);
return false;
}
}
и я хочу, чтобы вызвать метод Insert из UlozZakaznik(), но я получаю тип ошибки «Нет перегрузки метода «Insert» принимает 0 аргументы»Если кто-то может помочь с этим я была бы так счастлива :)
public void UlozZakaznik()
{
DataTable data_zakaznik = new DataTable("Zakazka");
data_zakaznik.Columns.Add("ID_Zakaznik");
data_zakaznik.Columns.Add("Name");
data_zakaznik.Columns.Add("Lastname");
data_zakaznik.Columns.Add("Login");
data_zakaznik.Columns.Add("Password");
data_zakaznik.Columns.Add("Number");
data_zakaznik.Columns.Add("Email");
data_zakaznik.Columns.Add("Adress");
Zakaznik_Mapper zakaznik = new Zakaznik_Mapper();
Zakaznik zakaznik1 = new Zakaznik();
zakaznik1.ID_zakaznik = Convert.ToInt32(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[0].Value);
zakaznik1.Name = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[1].Value);
zakaznik1.LastName = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[2].Value);
zakaznik1.Login = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[3].Value);
zakaznik1.Password = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[4].Value);
zakaznik1.Number = Convert.ToInt32(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[5].Value);
zakaznik1.Email = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[6].Value);
zakaznik1.Adress = Convert.ToString(dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[7].Value);
if (dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[0].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[1].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[2].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[3].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[4].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[5].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[6].Value != null
&& dataGridView1.Rows[dataGridView1.RowCount - 2].Cells[7].Value != null
)
{
data_zakaznik.Rows.Add(zakaznik1.ID_zakaznik, zakaznik1.Name, zakaznik1.LastName, zakaznik1.Login, zakaznik1.Password, zakaznik1.Number, zakaznik1.Email, zakaznik1.Adress);
zakaznik.Insert();//problem is here "Error type: No overload for method 'Insert' takes 0 arguments"
}
}
Погрешность говорит вам, что проблема; единственной сигнатурой метода, которая существует для вставки, является 'public bool Insert (int ID_zakaznik, String ..... другие параметры)' либо поставлять параметры, определять вставку, которая не принимает аргументов, либо предоставлять значения по умолчанию. – Chris