我使用这个简单的方法从页面中检索查询字符串并返回Int
。如果找不到有效的ID,我希望返回默认值int 0
。
我想知道是否有更好的方法来编写此方法,详细信息:
感谢您抽出宝贵时间。
protected int GetPageIndex()
{
int output;
bool result = Int32.TryParse(Request.QueryString["page"], out output);
if(result)
return output;
return output = 0; // Return Default value
}
答案 0 :(得分:5)
在尝试解析它之前初始化它...无论如何,如果转换不成功,Int32.TryParse将值设置为0 ... :) http://msdn.microsoft.com/en-us/library/f02979c7.aspx
protected int GetPageIndex()
{
int output = 0;
Int32.TryParse(Request.QueryString["page"], out output);
return output;
}
答案 1 :(得分:3)
您可以安全地返回output
,因为您似乎并不关心TryParse
是否成功,以及将值0
分配给{{1}最初,为了清楚起见,那么无论如何output
失败将会返回。
TryParse
答案 2 :(得分:1)
如何使用更少的代码,关于检查查询字符串我不认为你需要检查null,因为try解析应该处理null值。
protected int GetPageIndex()
{
int output;
return Int32.TryParse( Request.QueryString[ "page" ], out output ) ? output : 0;
}
答案 3 :(得分:0)
我会去
protected int GetPageIndex()
{
int output = 0;
Int32.TryParse(Request.QueryString["page"], out output);
return output;
}
答案 4 :(得分:0)
int output;
return Int32.TryParse(Request.QueryString["page"], out output) ? output : 0;