在sql server中,我创建了一个视图,我可以在其中检查空值,如果需要,可以用默认值替换它们(即ISNULL(PrimaryPhone,' No Primary#')AS PrimaryPhone。我经常使用我的asp.net网络表单应用程序中的视图,但我现在正在学习MVC 4,并希望从正确开始。
我为我的客户端表设置了模型,控制器和视图。我希望能够用(" Not Entered")或类似的东西替换null / empty值。 我相信这需要进入控制器,如果我错了,请纠正我。
我看到了一个使用hasvalue的例子,但它不能通过intellisense获得。
如何在我的模型中不使用DefaultValue来替换空/空值?
由于
var result = db.Clients.Select(x => new
{
CustomerID = x.CustomerID,
UserID = x.UserID,
FullName = x.FullName,
EmailAdd = x.emailadd.DefaultIfEmpty("No Email"),....
答案 0 :(得分:6)
当某些内容为空时,您可以使用?? operator设置默认值:
var result = db.Clients.Select(x => new
{
CustomerID = x.CustomerID,
UserID = x.UserID,
FullName = x.FullName,
EmailAdd = x.emailadd ?? "No Email", ...
如果您需要更多控制,例如检查null和empty,您还可以使用?: operator(也称为“条件运算符”或“三元运算符”):
var result = db.Clients.Select(x => new
{
CustomerID = x.CustomerID,
UserID = x.UserID,
FullName = x.FullName,
EmailAdd = string.IsNullOrEmpty(x.emailadd) ? "No Email" : x.emailadd, ...