Usted tiene un error en su declaración de enumeración (quitar el ;
final):
public enum HeightTypes { Short = 0, Tall = 1 }
continuación, la siguiente prueba debería funcionar:
@if (Model.Meta.Height == HeightTypes.Tall)
{
}
sólo hay que asegurarse de que su punto de vista es fuertemente tipado y que ha introducido en el ámbito el espacio de nombre en el que se define la enumeración de Altura:
@using SomeAppName.Models
@model SomeViewModel
o hacen referencia a la enumeración de esta manera:
@if (Model.Meta.Height == SomeAppName.Models.HeightTypes.Tall)
{
}
Sin embargo, para evitar hacer esto en todos los puntos de vista de afeitar que requieren el uso de esta enumeración, es más fácil para declarar en la sección <namespaces>
en el ~/Views/web.config
:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="SomeAppName.Models" />
</namespaces>
</pages>
</system.web.webPages.razor>
Por favor, sea específico acerca del error. Mensaje exacto copiado textualmente del compilador/IDE, preferiblemente. –