Ho lavorato su un progetto EF 6 in cui nel codice quadro era stata definita una Convenzione per garantire che tutti i POCO di entità che avevano un DateTime C # si associassero a datetime2 in Sql Server. Ora che non ci sono Convenzioni come potrei raggiungere questo obiettivo in EF Core?
Grazie @ David. Sulla base del link che hai inviato, penso che funzionerà (sono su una rete aziendale in questo momento con una politica di gruppo che non consente a NuGet Package Manager Console di invocare init.ps1 per entityframeworkcore.tools, quindi dovrò aspettare di prova questo a casa)
foreach (var entity in modelBuilder.Model.GetEntityTypes())
{
var dateTimeProps = entity.GetProperties()
.Where(p => p.PropertyInfo.PropertyType == typeof(DateTime));
foreach (var prop in dateTimeProps)
{
modelBuilder.Entity(entity.Name).Property(prop.Name).HasColumnType("datetime2");
}
}