theo mặc định Entity Framework ánh xạ nhỏ thành byte.Khuôn khổ thực thể: ánh xạ tinyint thành boolean
tôi đã cố gắng thay đổi loại cơ bản sau khi nó được tạo ra để Boolean, nhưng nhận lỗi biên dịch
Member Mapping quy định là không hợp lệ. Loại 'Edm.Boolean [Nullable = False, DefaultValue =]' của thành viên blah ...
là điều này có thể trong 4.0?
không phải ý tưởng của tôi là sử dụng cột nhỏ xíu như boolean. điều này đã được thực hiện tự động bởi một nhóm khác sử dụng hibernate mà dường như nó theo cách đó cho khả năng tương thích mysql. rõ ràng tinyint có nhiều giá trị hơn 2. Tôi đang tìm kiếm một cách để ánh xạ nó để anyting chấp nhận cho 1 là sai, hoặc bất cứ điều gì chấp nhận cho 0 là đúng sự thật. hoặc sẽ làm việc cho tôi
có cách nào để kết nối với một phiên dịch viên loại EF?
đã đồng ý. tôi ghét rằng các int nhỏ được sử dụng để đại diện cho boolean. Rõ ràng điều này đã được thực hiện bằng cách sử dụng hibernate trong java, và tạo ra các trường như tinyint cho mysql compatiblity .. –
Trong các ngôn ngữ cũ, bất kỳ giá trị nào khác 0 được coi là true và 0 được coi là false ... vì vậy chúng là một phần để đổ lỗi :) – Dismissile
Hoàn toàn ngược lại, nó làm cho rất nhiều sence! Nếu bạn không thể thay đổi giản đồ cơ sở dữ liệu (vì bất kỳ lý do gì), thì bạn không có tùy chọn nào khác ngoài việc điều chỉnh ánh xạ. Trừ khi bạn muốn phơi bày một thuộc tính với một ngữ nghĩa boolean như một số nguyên, điều này là xấu. – proskor