Сопоставление свойств класса с общими столбцами в таблице.NET

У меня есть таблица SQL Server, которая имеет общие имена, такие как Text1, Text2 и т. Д. Таблица была разработана так, потому что одна и та же структура используется для разных проектов.

У меня есть класс в.NET, который имеет свойства. Скажем, у класса Customer есть свойство с именем FirstName.

Как я могу выполнить сопоставление FirstName и Text1 только один раз (центральное место) в приложении, чтобы мне не приходилось запоминать и жестко кодировать сопоставления во всем приложении при создании различных методов DAL?

Например, я хочу, чтобы приложение знало, когда я хочу обновить, вставьте FirstName, DAL автоматически использует Text1. По сути, мне не нужно запоминать, какое свойство передается в какой столбец. Идея состоит в том, чтобы разработчики не отображали свойства / столбцы неправильно. Это всегда соответствует.

Примечание. Вставка, обновление и удаление базы данных допускаются только через хранимые процедуры.

2 ответа

Если вы застряли в MS и не хотите использовать структуру сущностей, LinqToSQL очень хорош.

Если вы не можете использовать NHibernate (и я настоятельно рекомендую вам это сделать) или не можете использовать LINQ to SQL (возможно, ваша база кода -.NET 2.0), тогда...

Возможно, вы захотите реализовать какую-то фабричную модель. Внутри вашего фабричного объекта вы можете захотеть вернуть строго набор данных, а затем использовать объект для сопоставления объектов для преобразования между вашим набором данных и объектами DTO/View/Entity. Джимми из Los Techies создал отличный объект с открытым исходным кодом для сопоставления объектов, который может оказаться очень полезным: AutoMapper.

Удачного кодирования.

Посмотрите на различные ОРМ там. Для отображения устаревшей базы данных, NHibernate идеально подходит.

Другие вопросы по тегам