Могу ли я создать enum, в котором более 500 участников? - PullRequest
0 голосов
/ 24 июня 2018

Я создаю систему базы данных, в которой есть таблицы, в которых есть некоторые данные, которые не являются пользовательскими, они будут в основном использоваться приложением для поиска.Но для производительности базы данных и оптимизации запросов я решил использовать перечисления для этих поисков и хранить их целые числа в таблице вместо всего слова.

Я хочу сделать перечисление под названием «болезни», и они имеют 500 типов.

Итак, могу ли я создать перечисление в C # (ядро .net), содержащее 500 членов, и, если нет, как мне достичь этого?Кроме того, есть ли способ локализовать значения в перечислениях?

Я использую перечисления, потому что они спасут меня от присоединения, когда я делаю запросы в базе данных.Если бы я не использовал перечисления, мне пришлось бы запросить таблицу, а затем сделать 2 объединения с еще двумя таблицами, которые имеют данные поиска.Если я сделаю их с перечислениями, мне нужен только номер, который будет сохранен в первой таблице, и в приложении получит его строку, и я буду спасать запрос от использования 2 соединений каждый раз, когда получаю данные.

1 Ответ

0 голосов
/ 24 июня 2018

Можно ли создать перечисление в C # (.net), содержащее 500 членов

Конечно, если хотите.
Но я думаю, что это плохая идея.Представьте, что если кто-то еще захочет использовать вашу базу данных, ему потребуется копия того же enum, что означает, что вам придется хранить 2 (или более) копии одного и того же списка столько, сколько нужно другим людям.это, и я не думаю, что кто-то хочет это делать.

500 строк в базе данных - это ничто, превращение в enum не сильно вам поможет (по крайней мере, то, что вы можете заметить)), вместо этого просто сохраните их в таблице, и все будут довольны.

Есть ли способ локализовать значения в перечислениях

Нет, не вне-Box.Вам придется создать собственное решение для этого.Это зависит от того, где и как хранятся ваши локализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...