我目前正在使用以下脚本将此值设置为String:
string ID = Request.QueryString["ID"].ToString();
但是,我现在想把它存储为整数。
我该怎么做?
非常感谢任何指示。
答案 0 :(得分:5)
假设您不想在错误的字符串上抛出服务器错误
int id=0;
if (int.TryParse(Request.QueryString["ID"],out id)) {
.. logic for valid id
} else {
.. logic for invalid id
}
答案 1 :(得分:3)
int ID = int.Parse(Request.QueryString["ID"].ToString());
答案 2 :(得分:2)
使用以下任何一种:
如果您知道您有ID:
string ID = Request.QueryString["ID"];
int integerId = int.Parse(ID);
或者,如果查询字符串可能丢失或无效(从不信任查询字符串....)
string ID = Request.QueryString["ID"];
int integerId;
if (int.TryParse(ID, out integerId))
{
// you have a valid integer ID here.
// process it
}
else
{
// handle missing or invalid ID
}
答案 3 :(得分:1)
您可以执行以下操作:
int i = Convert.ToInt32(ID);
或
int i;
Int32.TryParse(ID, out i);
BTW Request.QueryString["ID"]
已经是一个字符串,所以以下情况很好:
string ID = Request.QueryString["ID"];
答案 4 :(得分:0)
答案 5 :(得分:0)
你可以这样做:
string ID = Request.QueryString["ID"].ToString();
int id=int.Parse(ID);
或
int id=Convert.ToInt16(ID);
答案 6 :(得分:0)
如果要将其转换为整数,即使您从未将其设置为字符串,也始终使用tryparse作为查询字符串值,因为用户可以在发送请求之前随时更改(在URL中可见)。
int id = 0; //默认值
bool success = int.TryParse(Request.QueryString [“ID”],out id))
if(success){ //为默认值操作编写代码 返回; }
//为其他值编写代码。