1
public class Util {
2
private Util() {}
3
4
// 从 querystring 集合中安全的取得一个 string. (总是不会有 null,所以叫做 'Safe')
5
public static string GetStringSafeFromQueryString(Page page, string key) {
6
string value = page.Request.QueryString[key];
7
return (value == null) ? string.Empty : value;
8
}
9
10
// 在上述基础上,实现几个常用类型的获取方法。
11
public static int GetInt32SafeFromQueryString(Page page, string key, int defaultValue) {
12
string value = GetStringSafeFromQueryString(page, key);
13
int i = defaultValue;
14
try {
15
i = int.Parse(value);
16
} catch {}
17
return i;
18
}
19
// double 的实现
20
public static double GetDoubleSafeFromQueryString(Page page,
21
string key, double defaultValue) {
22
string value = GetStringSafeFromQueryString(page, key);
23
double d = defaultValue;
24
try {
25
d = double.Parse(value);
26
} catch {}
27
return d;
28
}
29
// 同理可以写出 float, 的实现
30
}
在我的任何页面里面,要获取 querystring 的时候,只要这样就可以了:
2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

比如我要获取一个 string:
1
string name = Util.GetStringSafeFromQueryString(this, "name");
2
if (name.Length > 0) {
3
// 进行正常的处理
4
} else {
5
// 不处理。
6
}
获取 int:
2

3

4

5

6

int id = Util.GetInt32SafeFromQueryString(this, "id", 0);