Asp.net mvc 3 MVC3剃须刀:如何检查模型是否为空
我试过使用!它不起作用,因为模型没有任何扩展名。如何解决? 这是我的代码片段Asp.net mvc 3 MVC3剃须刀:如何检查模型是否为空,asp.net-mvc-3,razor,Asp.net Mvc 3,Razor,我试过使用!它不起作用,因为模型没有任何扩展名。如何解决? 这是我的代码片段 @model MyModel.Work @if ( !Model.Any() ) { <script type="text/javascript"> alert("Model empty"); </script> } else { <script type="text/jav
@model MyModel.Work
@if ( !Model.Any() )
{
<script type="text/javascript">
alert("Model empty");
</script>
}
else
{
<script type="text/javascript">
alert("Model exists");
</script>
}
@model MyModel.Work
@如果(!Model.Any())
{
警报(“模型为空”);
}
其他的
{
警报(“模型存在”);
}
这个怎么样:
if(Model == null)
{
}
在我看来,您似乎正在实例化该模型,但希望检查并查看是否已填充该模型 我的标准方法是创建一个名为
Empty
的bool
属性,只给出一个get,然后返回您需要的检查,以查看是否没有设置其他属性
假设您有一个客户类作为您的模型:
public class Customer
{
public int CustomerId {get;set;}
public string FirstName {get;set;}
public string LastName {get;set;}
public string Email {get;set;}
public bool Empty
{
get { return (CustomerId == 0 &&
string.IsNullOrWhiteSpace(FirstName) &&
string.IsNullOrWhiteSpace(LastName) &&
string.IsNullOrWhiteSpace(Email));
}
}
}
现在,在您的模型中,您只需调用:
@model MyModel.Work
@if (Model.Empty)
{
<script type="text/javascript">
alert("Model empty");
</script>
}
else
{
<script type="text/javascript">
alert("Model exists");
</script>
}
@model MyModel.Work
@if(Model.Empty)
{
警报(“模型为空”);
}
其他的
{
警报(“模型存在”);
}
您可以尝试以下方法:
@if (Model.Count == 0)
{
}
我也有同样的问题。我不知道这是否重要,但我使用MVC5。我忘了将任何东西从控制器发送到视图。因为我放了“返回视图(myList);” 在我的控制器中,方法.Any()工作正常。
@if(!Model.Any()){}
在将数据列表作为模型传递时工作。如果您试图检查model是否为空,它不是一个列表,并且可能包含单个记录或没有记录,那么我通常使用@If(model==null)
希望能有所帮助:)前面答案中的信息组合对我很有用
@if (Model != null && Model.Count() != 0)
{
<ul>
<li><strong>Hello World</strong></li>
</ul>
}
@if(Model!=null&&Model.Count()!=0)
{
- 你好,世界
}
祝你好运。那么你的模型不是空的。调试它,看看为什么它不是空的。空的!=无效的空集合仍然是集合。
@if(Model==null)
不起作用,因为模型总是返回一些其他关联值。第一个脚本行给出“Expected';”警告。是否也可以告诉用户哪个属性是空的?@if(Model.Count()==0)Count之后缺少()我会说这是一个更好的方法。(当然,它应该是Model.Count()
。测试null不起作用。
`
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
namespace APIPractice.Models.EmployeeModel
{
public class LoginModel
{
[Key]
public int Id { get; set; }
[Required]
public string Username { get; set; }
[Required]
public string Password { get; set; }
[Required]
public string RePassword { get; set; }
[Required]
public int IsActive { get; set; }
public bool Empty
{
get
{
if (
string.IsNullOrWhiteSpace(Username) ||
string.IsNullOrWhiteSpace(Password) ||
string.IsNullOrWhiteSpace(RePassword) ||
IsActive == 0
)
{
return false;
}
else
{
return true;
};
}
}
}
}`
and in your controller
`if (loginModel.Empty)
{
//your success code.
}else{
//Your fail msg.
}`