我对 C# 和 ASP.NET 还很陌生,所以请多多包涵。我正在设置一个从 url 接收查询字符串的页面。然后它将这些字符串传递给另一个方法(实际上是在另一个类中),该方法根据查询字符串的值继续做很多事情。
一般结构看起来像这样,其中DoSomething()
实际上是另一个类的一部分,将被许多不同的页面使用:
pretected void Page_Load (object sender, EventArgs e)
{
DoSomething (Request.QueryString["name"]);
}
public void DoSomething (string UrlVariable)
{
// if UrlVariable isn't set, initialize it to some value
// do stuff with UrlVariable
}
这就是我想知道的:
- 如果 url 中没有定义查询字符串“name”,Request.QueryString 会返回什么?一个空字符串?
null
? - 如果它返回
null
,如果我尝试传递null
给期望字符串的方法会发生什么?整个程序是否崩溃,或者我可以检查null
DoSomething() 方法内部(在收到空字符串后)?
“名称”是可选的,所以如果用户没有设置它,我想检测它并将其初始化为某个默认值。但是,如果可能的话,我想在 DoSomething() 中进行任何验证,而不是对请求字符串的每个页面进行检查。
提前致谢!