Blindar propiedades de dominio anulables con ViewModel

Estoy usando Entity Framework 4.0 y estoy haciendo uso de objetos POCO. Cuando relleno los objetos POCO de la base de datos, traduzco los valores de propiedad a mis propios objetos de dominio, a los que podemos llamar mi modelo.

Necesariamente, si los campos de mi modelo son o no anulables depende de si el valor al que se asigna en la base de datos proviene de una columna NULA o NO NULA. No entraré en detalles, pero los valores deben ser anulables en la base de datos, ya que un usuario puede guardar parcialmente un borrador del objeto antes de publicarlo en público. Siendo ese el caso, tengo varios campos que son anulables. Así que digamos que mi modelo se ve como:

public class MyModel
{
   public int? Field1 {get; set; }
   public DateTime? Field2 {get; set; }
   public int Field3 {get; set; }
}

Si utilizo este modelo en mi vista, completo con campos que admiten nulos, comienzo a recibir errores que me dicen que no puedo usar las propiedades que aceptan nulos como valores en varios lugares, como ayudantes de HTML, etc. Podría decir algo comoif (Model.MyBoolField.HasValue && Model.MyBoolField.Value) { // etc }, pero eso se siente voluminoso para una vista.

Consideré crear un objeto ViewModel que se hereda de mi objeto de dominio original y tenganew, las versiones no anulables de mis campos anulables que devuelven un valor apropiado si la versión base es nula. Así que algo como:

public class MyViewModel : MyModel
{
   public new int Field1
   {
      get { return base.Field1 ?? 7; }
   }

   public new DateTime Field2
   {
      get { return base.Field2 ?? DateTime.Now; }
   }
}

Mi problema con esto es que no siempre conozco un buen valor "predeterminado" para mostrar. ¿Qué sucede si lancé una excepción en el getter del modelo de vista cuando el valor base es nulo? ¿Es eso una mala práctica?

Básicamente, estoy buscando una mejor práctica sobre cómo manejar los campos que admiten nulos en un modelo, especialmente cuando se muestra en una vista.