Я работаю над проектом, в котором пытаюсь избежать жесткого кодирования идентификаторов БД в сервис-ориентированном проекте .NET. В некоторых случаях мне нужно для установки значений идентификаторов с помощью кода, но я не хочу просто жестко кодировать идентификаторы, так как я делал это раньше, и это приводит к кошмарам выравнивания БД при автоматическом увеличении Идентификаторы были изменены при сбросе БД в новую систему.
То, что я хочу сделать, - это создать перечисляемые константы, которые хранят идентификаторы так, чтобы в худшем случае обновлялся только 1 файл, если БД когда-либо изменялась, вместо того, чтобы пытаться пройти тысячи и тысячи строк кода заменить любой идентификатор в системе.
Это будет работать в одной системе, но в сервис-ориентированной среде моей компании перечисления не сериализуются с их значениями, а только с их именами.
Каков наилучший способ обмена идентификаторами через веб-сервис? Я хотел бы использовать перечисления (идеальная ситуация) или константы каким-то образом, но я не могу заставить это работать. Я мог бы создать веб-метод, который возвращает идентификаторы, но отправка веб-запроса для каждого идентификатора, а затем сериализация ответа и десериализация на клиентском компьютере звучит как плохая идея.
EDIT
Я не совсем понял, о чем спрашиваю, поэтому уточню.
Я хочу иметь группу констант. Перечисление будет использоваться только потому, что оно соответствующим образом группирует константы. В основном меня интересует, есть ли способ обмена константами через веб-сервис. Мне нужны значения, которые представляет перечисление, а не само перечисление. Перечисление никогда не отправляется между службой и клиентом, кроме как целое число. Внутри все хранится как идентификатор, а не как перечисление.
Наличие отдельной общей библиотеки не похоже на идеальное решение, так как я почти на стадии завершения этого проекта, и я буду хранить только 1 перечисление / класс в библиотеке. Кажется, что это пустая трата всего лишь на один урок.