Hi Asad,
I'll make the same change here to make sure we are only getting our param from the query string. This function ParseInt32FromQueryString is poorly named since it actually by default parses all request params unless you pass in true to make it only look at the query string but unfortunately renaming it would be a breaking change for custom features in the wild, so all I could really do is overload the method to allow passing in this bool. I added this overload not too long ago for this very reason because I had a similar case where there was a form variable and a querysrtring param with the same name and it caused a conflict.
Best,
Joe