以下代码:
Excel.Application xlApp = new Excel.Application();
Excel.Workbook workbook = xlApp.Workbooks.Open(Files.Cotacao);
Excel._Worksheet worksheet = workbook.Sheets[2];
Excel.Range range = worksheet.UsedRange;
{
for (int i = 2; i < range.Rows.Count + 1; i++)
{
int j = 0;
var data = new Cotacao
{
DateTime = DateTime.Now,
Descricao = range.Cells[i, 10] != null && range.Cells[i, 10].Value2 != null
? range.Cells[i, 10].Value2.ToString()
: "--",
ProdutoId = range.Cells[i, 1] != null && range.Cells[i, 1].Value2 != null
? Select.Produto(range.Cells[i, 1].Value2.ToString())
: 4642
};
db.Cotacoes.Add(data);
db.SaveChanges();
Console.WriteLine(i);
}
}
有错误的输入行:
Apelido = range.Cells[i, 10] != null && range.Cells[i, 10].Value2 != null
? range.Cells[i, 10].Value2.ToString()
: "--",
可以看到哪个被移除了。
尽管已删除,但在SaveChanges
告知列名Apelido
无效时收到错误消息:
System.Data.SqlClient.SqlException:无效的列名'Apelido'
我怎么能摆脱这个Apelido
,因为它甚至不存在?