Search code examples
asp.net-mvc-3asp.net-mvc-4razorrazor-2

Using If statement in a MVC Razor View


In the following code,

If I use "@If" statement ,I get the following compile code error as " The name 'grid' does not exist in the current context.

@if (Model.SModel != null)

{

@{ 
    WebGrid grid = new WebGrid(Model.SModel);

 }

 }

 else
 {
}

@grid.GetHtml()

,

But the code compiles without the "If" statement.For example

@{ 
    WebGrid grid = new WebGrid(Model.SModel);

}
@grid.GetHtml().

What is the syntactical error in using If else statement


Solution

  • grid isn't declared outside of the scope of your if statment.

    Try this instead:

    @if (Model.SModel != null) {
        WebGrid(Model.SModel).GetHtml()
    }