Как прочитать всю строку и сохранить ее в переменной? Я знаю, какой тип хранится там (пользовательский тип сотрудника).
Я пытался сделать это вручную.
private async void AddEmployee()
{
var context = new NorthwindContext();
int selectedRowCount = EmpMgmtDataGridView.Rows.GetRowCount(DataGridViewElementStates.Selected);
if (selectedRowCount > 0)
{
for (int i = 0; i < selectedRowCount; i++)
{
var employeeToAdd = new Employees();
employeeToAdd.FirstName = EmpMgmtDataGridView[1, i].ToString();
employeeToAdd.LastName = EmpMgmtDataGridView[2, i].ToString();
await context.AddAsync(employeeToAdd);
await context.SaveChangesAsync();
}
}
}
Но это заканчивается на
SqlException: String or binary data would be truncated.
The statement has been terminated.
в SaveChanges. Я пытаюсь отправить его в базу данных, но я знаю, как это сделать, я просто не могу получить его из DataGridView.
Редактировать
Произведено обновление, но оно заканчивается с идентичной ошибкой .
private async void AddEmployee()
{
var context = new NorthwindContext();
int selectedRowCount = EmpMgmtDataGridView.Rows.GetRowCount(DataGridViewElementStates.Selected);
var rows = EmpMgmtDataGridView.SelectedRows;
if (selectedRowCount > 0)
{
for (int i = 0; i < selectedRowCount; i++)
{
var employeeToAdd = new Employees();
employeeToAdd.LastName = rows[i].Cells[1].ToString();
employeeToAdd.FirstName = rows[i].Cells[2].ToString();
await context.AddAsync(employeeToAdd);
await context.SaveChangesAsync();
}
}
}