Using If statement in a MVC Razor View

user2630764 picture user2630764 · Aug 5, 2013 · Viewed 63k times · Source

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

Answer

hunter picture hunter · Aug 5, 2013

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

Try this instead:

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