Entity Framework - Abrufen des Datentyps der Datenbankspalte aus Metadaten
Gibt es eine Möglichkeit, die Datentyp-Längeninformationen für die Datenbankspalte abzurufen, wenn der EntityType einer Tabelle angegeben ist?
Beispiel SQL (SQL Server), mit dem Sie genau sehen können, nach welchen Informationen ich suche:
select
sys.tables.name as 'Table Name',
sys.columns.name as 'Column Name',
sys.systypes.name as 'DataType',
sys.columns.max_length as 'Max Length',
sys.columns.precision as 'Precision'
from
sys.columns, sys.systypes, sys.tables
where
sys.columns.system_type_id = sys.systypes.xtype
and sys.systypes.name <> 'sysname'
and sys.tables.type = 'U'
and sys.tables.name <> 'sysdiagrams'
and sys.columns.object_id=sys.tables.object_id
order by
sys.tables.name, sys.columns.column_id;
Die letzten drei Spalten enthalten die Daten, auf die ich Zugriff haben möchte, da ich Dokumentation erstelle. Ein Grund für die Dokumentation ist beispielsweise: Entity Framework löst standardmäßig eine Ausnahme aus, wenn eine Zeichenfolge für eine Eigenschaft festgelegt ist, deren Länge nicht unterstützt wird. Ein Entwickler ohne Zugriff auf die Datenbank-Metadaten hat in diesem Fall eine Herausforderung mit der Auffindbarkeit von Längenanforderungen.
Danke, Aaron