C# 当某个值返回为null时,如何使用下拉列表中的选定值?

C# 当某个值返回为null时,如何使用下拉列表中的选定值?,c#,datatable,selectedvalue,C#,Datatable,Selectedvalue,目标:让下拉列表根据数据表上的某些数据选择特定值 问题:数据表上的某些数据没有值,这会导致超出范围的异常。代码如下所示 dtMyDataTable = objMyObject.MyStoredProcedure(); if(dtMyDataTable.Rows.Count > 0) { ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString(); } 提前感谢您的任何意见、建议或建议 ddlMyDro

目标:让下拉列表根据数据表上的某些数据选择特定值

问题:数据表上的某些数据没有值,这会导致超出范围的异常。代码如下所示

dtMyDataTable = objMyObject.MyStoredProcedure();

if(dtMyDataTable.Rows.Count > 0)
{
   ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString();
}

提前感谢您的任何意见、建议或建议

ddlMyDropDownList是下拉列表控件吗?如果是,则不能将字符串值分配给列表控件。所以这可能是个问题。请参阅以了解如何做到这一点

if(dtMyDataTable.Rows.Count > 0)
{
   if(dtMyDataTable.Rows[0]["OptionalField"] != null)
       ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString();
}

这个答案还应该告诉您如何防止空值。

对于任何感兴趣的人,这就是我解决问题的方法:

       if (dtMyTable.Rows[0]["OptionalField"] != null)
            {
                if (dtMyTable.Rows[0]["OptionalField"].ToString() == "")
                {
                    ddlMyDropDownList .SelectedIndex = 0;
                }
                else
                {
                    ddlMyDropDownList .SelectedValue = dtMyTable.Rows[0]["OptionalField"].ToString();
                }
             }

当我有一个非null的值时,这就起作用了,但是当我遇到null值时,我会得到一个异常,表明ddl选择的值超出范围。我尝试创建一个将ddl SelectedValue设置为“0”的else,但它似乎无法解决我的问题