判断数据是否为空和判断文件是否存在以及如何读取文件
- 在判断页面传过来的数据是否为空
在判断页面传过来的数据是否为空时,不同的数据类型要使用不同的方法。
例:
- string类型
string类型字段判断是否为空时用 bool string.IsNullOrEmpty(string value)指示指定的字符串是null还是空字符串“”。
--bool默认为空,如果要判断不为空需在前面加“!”,
--返回结果:如果为true参数为value或空字符串(“”),则为null,否则为false.
- date类型
date类型的字段需要通过Convert.ToDateTime转换为string类型再做判断。
-DateTime ConvertToDateTime(string value)将日期和时间的指定字符串形式转换为等效的日期和时间值。
-DateTime表示时间上的一刻,通常以日期和当天的时间表示。
-Value的值的日期和时间等效项,如果DateTime.MinValue为value,则为null的日期和时间等效项。
-Convert将一个基本数据类型转换为另一个基本数据类型。
- int类型
判断是否为空时只需判断该数值是否大于0即可。
注意:
-如果是int,表示页面一定要传类型为int的数据过来,否则会报错
-如果是?Int,表示该参数可空,即页面可传数据过来也可不传数据过来
-Nullable<int>,表示可分配有null的值类型
- 判断文件是否存在和读取文件
-使用bool System.IO.File.Exists(string path) 确定指定的文本是否存在。
如果调用方具有要求的权限并且true包含现有文件的名称,则为path;否则为false。
如果false为path(一个无效路径或零长度字符串),则此方法也将返回null。如果调用方不具有读取指定文件所需的足够权限,则不引发异常并且该方法返回false,这与path是否存在无关。
-如果文件存在,使用string System.IO.File.ReadAllText(string path)打开一个文本文件,读取文件中的所有文本,然后关闭此文件。
- ViewBag 的使用
-ViewBag是一个动态类型变量(dymanic),变量类型会在运行时进行解析。
-ViewBag只在当前的请求中有效
-在重定向后(redirection)后,ViewBag中存储的变量值将变为null
-在取值时,不需要进行类型转换
例:
public ActionResult Index()
{
ViewBag.Message = "This is a message from ViewBag";
return View();
}
在视图中取出数据并显示:
运行后结果如下:
所以,ViewBag更适合从Controller向View传递复杂对象数据时使用,因为取出存储在其中的数据变量时无需进行类型转换。