Có cách nào để lấy cột dữ liệu DataType chiều dài thông tin được cung cấp cho một EntityType của bảng không?Khung thực thể - cách lấy kiểu dữ liệu cột cơ sở dữ liệu từ siêu dữ liệu
Ví dụ SQL (SQL Server) mà bạn có thể chạy để xem chính xác những thông tin tôi đang tìm kiếm:
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;
3 cột cuối cùng chứa dữ liệu mà tôi muốn được tiếp cận với vì tôi tạo ra một số tài liệu. Một lý do ví dụ cho tài liệu là: Entity Framework sẽ ném một ngoại lệ theo mặc định nếu một chuỗi được đặt trên thuộc tính không thể hỗ trợ độ dài của nó. Nhà phát triển không có quyền truy cập vào siêu dữ liệu của cơ sở dữ liệu có thách thức với khả năng phát hiện các yêu cầu về độ dài trong trường hợp này.
Xin cảm ơn, Aaron
... Nhưng có những thuộc tính mô hình khái niệm có chứa thông tin đó cho các lĩnh vực nơi mà nó được áp dụng. Giả sử thông tin đó được cập nhật, bạn có thể tải nó từ CSDL thay vì phải tra cứu các ánh xạ, v.v. – KristoferA
Tuyệt đối. Tôi có nghĩa là để đề cập đến điều này ... –
Btw, nếu/khi những thuộc tính có được ra khỏi đồng bộ nó là một khoe để cập nhật chúng một lần nữa với các mô hình so sánh trong add-in của tôi ... (http://huagati.blogspot.com /2010/07/introducing-model-comparer-for-entity.html) – KristoferA