Estoy intentando crear una columna 'time (7)' en una tabla con Entity Framework Code First. Este es mi Entidad:Tipo SQL 'hora' en Entity Framework Code First
public class ShiftDetail
{
public long Id { get; set; }
[Required]
public int DayOfWeek { get; set; }
[Required]
[Column(TypeName="time")]
public DateTime StartTime { get; set; }
[Required]
[Column(TypeName = "time")]
public DateTime EndTime { get; set; }
public long ShiftId { get; set; }
public virtual Shift Shift { get; set; }
}
Como se puede ver que estoy tratando de establecer el tipo de base de datos para las columnas StartTime y EndTime a "tiempo" pero me sale este error:
(112,12) : error 2019: Member Mapping specified is not valid. The type 'Edm.DateTime[Nullable=False,DefaultValue=,Precision=]' of member 'StartTime' in type 'ShiftDetail' is not compatible with 'SqlServer.time[Nullable=False,DefaultValue=,Precision=7]' of member 'StartTime' in type 'CodeFirstDatabaseSchema.ShiftDetail'.
I' he intentado también con el nombre de tipo = "tiempo (7)", pero me sale este otro error:
(104,6) : error 0040: The Type time(7) is not qualified with a namespace or alias. Only primitive types can be used without qualification.
¿Cómo puedo crear una columna con el código de tiempo en primer lugar? (preferiblemente sin una API fluida)
Gracias de antemano.
Si usa el diseñador de EDMX, ¿qué tipo de datos selecciona para su columna de tiempo? Probablemente no deberías usar 'DateTime', pero no estoy seguro de cuál es el tipo correcto, y esta es una manera fácil de averiguarlo. – hvd