У меня есть приложение, которое использует EntityFramework Code Сначала для создания базы данных, если она не существует. И я использую MySQL для механизма базы данных.Создайте столбец BARCHAR VARCHAR в MySQL с Entity Framework Codefirst
У меня есть таблица, где одна из столбцов ключа должна быть чувствительной к регистру. Я не хочу отмечать всю базу данных или таблицу как чувствительную к регистру с помощью сопоставления, поэтому лучший способ сделать это (что я знаю) - пометить столбец как BINARY.
Кто-нибудь знает, как это сделать, используя Code First? Я пробовал делать:
[Column(TypeName = "varchar(100) BINARY")]
, но это не нравится, что я в первый раз доступ к модели DB я получаю
Исключение типа «System.InvalidOperationException» произошло в EntityFramework.dll, но не был обработан в пользовательском коде
Дополнительная информация: Последовательность не содержит соответствующий элемент
Может быть, я должен вобще ALTER TABLE после создания базы данных?
На самом деле я попробовал это после того, как я отправил вопрос, к сожалению, она не работает в моем случае, потому что мне нужно свойство EF быть строкой, но этот тип столбца совместим только с байтом [] –
Ну , если он двоичный, то это не строка - это байты, поэтому эта часть имеет смысл в сильно типизированной среде. Что относительно 'VARCHAR (100) COLLATE utf8_bin'? Это должна быть строка, чувствительная к регистру. –
Это работает отлично, если Im создает таблицу вручную, но Im ищет способ сделать это с помощью EntityFramework –