Ich habe folgendes Szenario:Entity Framework mit Benutzertabellenwert Typ
- Ein Unternehmen
Degree
genannt, die einen komplexen Typ hatPeriod
- ich die Funktion in SQL
User-Defined Table type
verwenden möchten Der Entitätscode
public class Degree {
public string Institution {get;set;}
public string Major {get; set;}
public Country Country {get; set;}
public Period StartOn {get; set;}
public Period EndOn {get; set;}
}
public class Period {
public int Year {get; set;}
public int Month {get; set;}
public bool IsPresent {get; set;}
}
Der DbContext Code
public class Context: DbContext
{
public DbSet<Degree> Degrees {get; set;}
public override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Degree>()
.Property(t => t.StartOn).HasColumnType("udt_period");
}
}
** Fehler **
Fehler CS0453 Der Typ 'Periode' ein Nicht-Nullable-Wertetyp in um sie als Parameter T zu verwenden sein muss‘ "in der generischen Art oder Methode 'StructuralTypeConfiguration.Property (Expression>)'
Wie das Unternehmen framew lassen ork den benutzerdefinierten Tabellentyp zu erstellen und verwenden StartOn
und EndOn
als udt_period
Jede Hilfe sehr
geschätzt
Ja, Sie haben Recht, danke, aber die andere Antwort enthält mehr Details und sie waren sehr hilfreich. – Set