ASP.NET中参数过滤

1.将参数转换成Int类型

代码
public static int GetInt(object obj)
{
int defaultValue = -1;
if (obj == null || obj.ToString().Trim().Length == 0)
return defaultValue;

int result;
bool isSucceed = int.TryParse(obj.ToString(), out result);

if (isSucceed)
return result;

return defaultValue;
}

2.转换成Int类型的参数,如果不成功返回指定的默认值。

代码
public static int GetInt(object obj, int defaultValue)
{
if (obj == null || obj.ToString().Length == 0)
return defaultValue;

int result;
bool isSucceed = int.TryParse(obj.ToString(), out result);

if (isSucceed)
return result;

return defaultValue;
}

3.转换成Int类型的参数,如果不成功返回指定的默认值。

代码
public static int? GetInt(object obj, int? defaultValue)
{
if (obj == null || obj.ToString().Length == 0)
return defaultValue;

int result;
bool isSucceed = int.TryParse(obj.ToString(), out result);

if (isSucceed)
return result;

return defaultValue;
}

4.转换成字符串

代码
public static string GetString(object obj)
{
if (obj == null || obj.ToString().Length == 0)
return string.Empty;

return obj.ToString();
}

5.转换成字符串类型的参数,如果不成功返回指定的默认值。

代码
public static string GetString(object obj,string defaultValue)
{
if (obj == null || obj.ToString().Length == 0)
return defaultValue;

return obj.ToString();
}

6.获得日期,格式为yyyy-MM-dd,日期不对时返回空字符串

代码
public static string GetDate(object date, string format)
{
string defaultValue = string.Empty;
if (date == null || date.ToString().Length == 0)
return defaultValue;

DateTime dt;
if (DateTime.TryParse(date.ToString(), out dt))
{
if (dt == DateTime.MinValue || dt.ToString("yyyy-MM-dd") == "9999-12-31"
|| dt == DateTime.MaxValue || dt.ToString("yyyy-MM-dd") == "1900-01-01"
|| dt.ToString("yyyy-MM-dd") == "0000-00-00" || dt.ToString("yyyy-MM-dd") == "0001-01-01")
{
return defaultValue;
}

return dt.ToString(format);
}
return defaultValue;
}

7.获取布尔值

代码
public static bool GetBool(object obj)
{
if (obj == null || Convert.IsDBNull(obj) || string.IsNullOrEmpty(obj.ToString()))
return false;

if(obj.ToString() == "1")
return true;

bool result;
if(bool.TryParse(obj.ToString(),out result))
{
return result;
}
return false;
}

8.获取浮点值

代码
public static float GetFloat(object obj)
{
float defaultValue = -1;
if(obj == null || Convert.IsDBNull(obj) || string.IsNullOrEmpty(obj.ToString()))
return defaultValue;

return GetFloat(obj, defaultValue);
}

9.获得Decimal型数据

 

代码
public static decimal GetDecimal(object obj, decimal defaultValue)
{
if (obj == null)
return defaultValue;

decimal result;
if (decimal.TryParse(obj.ToString(), out result))
{
return result;
}
return defaultValue;
}

 

 

posted @ 2010-09-17 12:11  marr  阅读(361)  评论(0)    收藏  举报