私は、特定の細胞だけがそこに存在し、それよりも大きくないことを保証する必要があります。これらのヘッダーセルのテキストもあらかじめ指定されています。アプリケーション内で異なるセルテキストも許可することはできません。Cの辞書に含まれています
その後、ヘッダーに基づいて、データをリストに入れなければなりません。私は辞書で私のExcelを変換するためにやっている何を
はこれです:
var ws = excel.Workbook.Worksheets["Sheet1"];
int headerCol = 2;
Dictionary<string, int> map = Enumerable
.Range(ws.Dimension.Start.Column, 24 - ws.Dimension.Start.Column + 1)
.ToDictionary(col => ws.Cells[headerCol, col].Value.ToString().Trim(), col => col);
for (int rw = 3; rw <= ws.Dimension.End.Row; rw++)
{
if (!ws.Cells[rw, 1, rw, 24].All(c => c.Value == null))
{
lgl.GroupMembershipUploadInputList.Add(new GroupMembershipUploadInput()
{
cnst_mstr_id = (ws.Cells[rw, map["Master Id"]].Value ?? (Object)"").ToString(),
cnst_prefix_nm = (ws.Cells[rw, map["Prefix"]].Value ?? (Object)"").ToString(),
しかし、今どのように私は、ディクショナリマップのみが、例えば、これらの非常に指定された文字列のキーとないものと異なるものが含まれていることを確認しますマスターIDとプレフィックス - これらの2つと、まさにこの2つだけです。
実際には24個のキーがあります。チェックするための略語コードはありますか?
'map.Keys.All(k => new [] {"マスターID "、"接頭辞 "}。コンテナ(k));'? – itsme86