我正在创建一个web应用程序以将一个excel文件导入MS Dynamics Crm。这里是代码片段C#如果Else Inside For Loop没有工作
for (i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i][3].ToString() != String.Empty)
{
try
{
Entity contractline = new Entity("new_contractline");
contractline["new_lineitem"] = dt.Rows[i][1].ToString();
contractline["new_sublineitem"] = dt.Rows[i][3].ToString();
createChildData = service.Create(contractline);
string guidString = createChildData.ToString();
guidRecord[i] = guidString;
}
catch (Exception ex)
{
}
}
else if (dt.Rows[i][3].ToString() == string.Empty) /**THIS BLOK BELOW WON'T FIRE **/
{
try
{
Entity contractline = new Entity("new_contractline");
contractline["new_lineitem"] = dt.Rows[i][2].ToString();
contractline["new_sublineitem"] = dt.Rows[i][3].ToString();
contractline["new_quantity"] = "33";
service.Create(contractline);
}
catch (Exception ex)
{
}
}
的问题是,当dt.Rows[i][3]
是空的else if
块不火。可能是什么问题呢?
在异常处理程序中添加Trace.Writeline以查看是否正在处理异常。 –
是'dt.Rows [i] [3]'NULL'的值还是空字符串? – Steve
@Steve:我不确定,在excel领域它是空的。所以,当我做这个'dt.Rows [我] [3] .ToString()'我想我得到一个空不是空。 –