I'm using razor syntax and I want to check to see if certain ViewBag values are set before I spit out the html. If a value is set then I want to write it out. If not I want it to do nothing.
@if (ViewBag.UserExists != null)
{ 开发者_开发问答Response.Write(String.Format("<h3>{0}</h3>", ViewBag.UserExists)); }
This doesn't appear to be working correctly. The code shows up on top of another h2 I have above the code above. I have two register controller methods. One is the get and the other accepts the post. If the user exists I am setting a ViewBag item that needs to be displayed to the user.
Thanks
Don't use Response.Write. Instead do this:
@if (ViewBag.UserExists != null)
{
<h3>@ViewBag.UserExists</h3>
}
May be useful to some one who need to check NULL as well data type of ViewBag
if (ViewBag.MyBag != null & ViewBag.MyBag is string) //int or Foo or anyObject
{
<div class="row">
<br />
<div class="alert alert-danger col-sm-offset-2 col-md-8">
@ViewBag.MyBag
</div>
</div>
}
The code could be further simplified to :
<h3>
@(ViewBag.UserExists??"USER DOES NOT EXIST")
</h3>
精彩评论