Я пишу приложение MVC и в настоящее время работаю над тем, чтобы иметь возможность импортировать данные о сотрудниках из электронной таблицы Excel. У меня есть 2 ненулевых столбца в базе данных, которых нет в файле Excel (сотрудникиestatus - бит, и datecreated - дата / время).
Есть ли способ установить значения для этих столбцов при импорте других? Если я создаю новые столбцы в электронной таблице для этих полей и добавляю их в сопоставление, это прекрасно работает, но я хочу избежать того, чтобы клиенту приходилось это делать.
//where data gets stored in db
sqlBulk.DestinationTableName = "Employee";
//mappings
sqlBulk.ColumnMappings.Add("ID", "id");
sqlBulk.ColumnMappings.Add("LastName", "employeelastname");
sqlBulk.ColumnMappings.Add("FirstName","employeefirstname");
sqlBulk.ColumnMappings.Add("MI", "employeemi");
sqlBulk.ColumnMappings.Add("StreetAddress1", "streetaddress");
sqlBulk.ColumnMappings.Add("City", "employeecity");
sqlBulk.ColumnMappings.Add("State", "employeestate");
sqlBulk.ColumnMappings.Add("Zip", "employeezip");
sqlBulk.ColumnMappings.Add("Payroll", "payroll");
sqlBulk.ColumnMappings.Add("Salary", "salary");
sqlBulk.ColumnMappings.Add("POBox", "pobox");
sqlBulk.ColumnMappings.Add("POBoxCity", "poboxcity");
sqlBulk.ColumnMappings.Add("POBoxState", "poboxstate");
sqlBulk.ColumnMappings.Add("Org", "orgcode");
//write and close connection
sqlBulk.WriteToServer(dReader);
excelConnection.Close();
В идеале это будет выглядеть так:
sqlBulk.ColumnMapping.Set("status", "1");
sqlBulk.ColumnMapping.Set("empdatecreated") = DateTime.Now();
Мои поиски приводят меня к кругу примеров, когда все необходимые данные уже есть в электронной таблице.
Если я сначала положу это во временную таблицу, могу ли я тогда установить значения столбцов для всех строк?
Спасибо