C#程序映射到excel运行时间过长问题
我有一个C#程序,可以将遗留文本文件报告映射到excel工作表。它可以工作,但运行时间太长。 我不知道怎么做,但我读到一个问题是使用IF语句,我应该将其更改为SWITCH子句。我该怎么做? 这是一个典型的例子C#程序映射到excel运行时间过长问题,c#,excel,C#,Excel,我有一个C#程序,可以将遗留文本文件报告映射到excel工作表。它可以工作,但运行时间太长。 我不知道怎么做,但我读到一个问题是使用IF语句,我应该将其更改为SWITCH子句。我该怎么做? 这是一个典型的例子 else if (line.Contains("BILLING PARTY 1")) { string billingParty1 = line.Replace("BILLING PARTY 1", "");
else if (line.Contains("BILLING PARTY 1")) {
string billingParty1 = line.Replace("BILLING PARTY 1", "");
if (!string.IsNullOrWhiteSpace(billingParty1)){
patient.BillingParty1 = billingParty1.Trim();
}
}
这个建议在这里似乎不适用。您可以使用
switch
语句替换长链的if
s,检查字段是否与某个值匹配。例如:
if(foo == bar){
Do1();
}
else if(foo == baz){
Do2()
}
变成
switch(foo)
{
case bar:
Do1();
break;
case baz:
Do2();
break;
}
在这种情况下,编译器可能会生成更快的代码。但是在if
语句中似乎有一些更复杂的条件,而不是简单的等式,因此您将无法使用开关,因为在开关中
每个案例标签指定一个常量值
这与您的Excel问题无关