Мне нужно получить значение maxlength, указанное для поля, используя Fluent API и Entity Framework 5 Code First.Как получить MaxLength из спецификации API API Fluent во время выполнения?
Я видел несколько примеров, использующих MetadataWorkspace, но не работает, когда вы используете Fluent API. Например, я попробовал этот код, но значение для MaxLenght всегда нуль:
ObjectContext.MetadataWorkspace.GetItem<GlobalItem>(typeof(TEntity).FullName, DataSpace.OSpace).MetadataProperties[field].TypeUsage.Facets["MaxLength"].Value
Внутри Fluent файла конфигурации API У меня есть следующий код для необходимых свойств:
Property(t => t.Name).HasMaxLength(50);
Я знаю, отображение работает, потому что если я попытаюсь сохранить объект с более чем 50 символами в этом поле, это не сработает.
мне просто нужно руководство для получения значения maxlenght но дать перспективу цели является:
- Создать новый объект Foo
- Получить значение MAXLENGTH определенное для панели свойств, используя Fluent API.
- Применить определенные правила на основе максимальной длины к строке, которая будет назначена Bar.
- Сохранить.
Заранее спасибо.
Вы хотите, чтобы мы писали его для вас ??? –
Это не обязательно, мне просто нужно руководствоваться тем, какую библиотеку я могу использовать для получения значения maxlength, код уже выполнен, за исключением этой части. Я просто отредактировал вопрос, чтобы было ясно. Благодарю. – Kakaroto
'но это не работает, когда вы используете Fluent API.' что не работает? –