Понятия не имею, почему это не сработало, но, честно говоря, иметь весь этот код в представлении для меня неправильноМожет быть, это так же, как я, Visual Studio не любит писать код C # в представлении :-).
Это должно быть свойство в вашей модели представления:
public class MyViewModel
{
public bool MyCustomProperty { get; set; }
}
и внутри вашего контроллера:
public ActionResult Foo()
{
var model = TempData[ViewDataConstants.MyCustomTypeKey] as MyCustomType ?? new MyCustomType();
var viewModel = Mapper.Map<MyCustomType, MyViewModel>(model);
return View(viewModel);
}
и, наконец, внутри вашего представления:
<% if (Model.MyCustomProperty) { %>
show some custom content.
<% } %>
Теперь вы больше не нуждаетесь в использовании, кастингах ... в представлении.