Excel スプレッドシートから値を読み取り、その値をデータベースに保存する必要があります。現時点で問題があると思われるのは、行オブジェクトの列の個々の値にアクセスすることです
http://msdn.microsoft.com/en-us/library/office/documentformat.openxml.spreadsheet.cellvalue.aspx
var cellValues = from cell in row.Descendants<Cell>()
select (cell.DataType != null && cell.DataType.HasValue && cell.DataType == CellValues.SharedString
&& int.Parse(cell.CellValue.InnerText) < sharedString.ChildElements.Count
? sharedString.ChildElements[int.Parse(cell.CellValue.InnerText)].InnerText
: cell.CellValue.InnerText);
残念ながら、上記のコードは実行時に例外をスローするため、機能していないようです。そのため、OpenXML を使用して Excel の行オブジェクトに含まれる値にアクセスする方法について最善のアイデアを探しています。
+$exception {"オブジェクト参照がオブジェクトのインスタンスに設定されていません。"} System.Exception {System.NullReferenceException}
結果のスタック トレース
at MOC.Import.Products.<ProcessRows>b__0(Cell cell) in c:\Development\CFrontEnd\MOC.Import\Products.cs:line 37
at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
at System.Linq.Enumerable.Count[TSource](IEnumerable`1 source)
at MOC.Import.Products.ProcessRows(IEnumerable`1 dataRows, SharedStringTable sharedString) in c:\Development\CFrontEnd\MOC.Import\Products.cs:line 45