Джефф Этвуд недавно написал в Твиттере ссылку на сообщение CodeReview, где он хотел знать, может ли сообщество улучшить его фрагмент кода« вычисления энтропии строки » Он объяснил: «Мы» Есть ли способ в Entity Framework автоматически ... Предположим, у меня есть таблица со столбцом Описание, varchar (100). Если попытаться вставить строку, содержащую более 100 символов, вставка завершится неудачно. Есть ли в Entity Framework способ автоматически обрезать или обрезать строку, чтобы она поместилась в столбец перед вставкой в столбец? В моем сценарии меня действительно не волнует, усечена ли строка, я просто хочу, чтобы она была вставлена, а не просто сбой и запись ошибки. Поскольку модель уже знает пределы длины, я подумал, что может быть способ для Entity Framework, чтобы сделать это за меня. Если это не поддерживается, как лучше всего это сделать? Расширить автоматически сгенерированные частичные классы и переопределить методы On * Changed? Я бы предпочел не жестко указывать ограничения длины, а лучше использовать пределы длины, уже определенные в модели объекта. Как я могу получить к нему доступ? Править Моим окончательным решением было реализовать частичный метод On * Changed для автоматически сгенерированного объекта. Я использовал этот метод получения ObjectContext из экземпляра объекта, а затем использовал метод ниже, чтобы извлечь максимальную длину и обрезать строку.