我已经宣布如下列表
Listmylist= new List ();
这是myList的类
internal class myList { public int ID { set; get; } public string Name { set; get; } }
现在,当在列表中添加记录时,"名称"字段中的数据库中几乎没有空值.
mylist.Add(new myList{ ID= (int) item["ID"], Name = item["Name"].ToString()});
我知道我可以添加条件来检查
var Name =""; if (item["Name"] !=null) { Name = item["Name"] }
然后Name
在将记录添加到列表时使用变量
mylist.Add(new myList{ ID= (int) item["ID"], Name = Name});
还有其他更好的方法吗?
我怀疑你在这里寻找null-coalescing运算符,如果现有值是空引用,则提供默认值.
// Names changed to look more conventional people.Add(new Person { Id = (int) item["ID"], Name = (string) item["Name"] ?? "" });
注意在这里使用强制转换而不是调用ToString()
- 如果您认为某个值的执行时类型将是一个字符串引用,则强制转换是一个更明确的指示,它验证了该期望; 如果你DateTime
出于某种原因最终得到(比方说)某个值,那么强制转换会抛出异常而不是通过你的系统传播坏数据.