LINQ to SQL позволяет сопоставлениям таблиц автоматически преобразовывать туда и обратно в перечисления, указывая тип столбца - это работает для строк или целых чисел.
Есть ли способ сделать преобразование нечувствительным к регистру или добавить в смесь настраиваемый класс сопоставления или метод расширения, чтобы я мог более подробно указать, как должна выглядеть строка.
Причины для этого могут заключаться в том, чтобы предоставить более удобное соглашение об именах внутри некоторого нового забавного кода C# в системе, в которой схема данных уже установлена (и на нее полагаются некоторые устаревшие приложения), чтобы фактический текст в базе данных мог ' не подлежит изменению.





Вы всегда можете добавить частичный класс с тем же именем, что и ваш класс LinqToSql, а затем определить свои собственные параметры и функции. Затем они будут доступны как параметры и методы объекта для этого объекта, так же, как доступны автоматически сгенерированные методы LinqToSql.
Пример: у вас есть класс LinqToSql с именем Car, который сопоставляется с таблицей Car в базе данных. Затем вы можете добавить файл в App_Code со следующим кодом:
public partial class Car {
// Add properties and methods to extend the functionality of Car
}
Я не уверен, полностью ли это соответствует вашим требованиям по изменению способа отображения Enums в столбец. Однако вы можете добавить параметр, в котором свойства get / set будут работать для сопоставления перечислений, которые вам нужны, сохраняя при этом нечувствительность к регистру.
Я не понимал, что LINQ to SQL поддерживает сопоставление перечислений! Но теперь я знаю ... большое спасибо.