不能将整型转换为字符串
本文关键字:字符串 转换 整型 不能 | 更新日期: 2023-09-27 18:16:29
我有这样的代码:
int CityID= ((User)Session["LoggedInUser"]).CityID;
//When I debugg I get CityID = 7 here
ddlCity.Items.FindByValue(CityID).Selected = true;
和一个错误,我不能从int转换到字符串的底线。我怎样才能使它成为可能?
FindByValue需要一个字符串值,因此您必须将CityID转换为字符串。
Try this:
ddlCity.Items.FindByValue(CityID.ToString()).Selected = true
参数类型应该是string
,而不是int
,所以只使用内置的ToString():
ddlCity.Items.FindByValue(CityID.ToString()).Selected = true;
MSDN: listtitemcollection . findbyvalue () method
public ListItem FindByValue(
string value
)
看起来像FindByValue接受"String"。用CityId.ToString(CutureInfo.InvariantCulture)
代替CityId
则需要将整型转换为字符串。这可以通过以下两种方式之一完成
调用ToString()方法
ddlCity.Items.FindByValue(CityID.ToString()).Selected = true;
如果CityID为空,可能会引发空引用异常。
使用ConvertToString ()ddlCity.Items.FindByValue(Convert.ToString(CityID)).Selected = true;
此外,检查FindByValue方法是否返回null可能是明智的,因为当您尝试设置Selected = true