Как использовать что-то вроде именованных параметров с массивами?

Если что-то передается в метод как object[] myparams, к каждому элементу необходимо обращаться как myparams[0], myparams[1] и т. д.

Есть ли способ придать больше смысла каждому индексу, а не просто числу? Что-то, возможно, похожее на именованные параметры, которые, как я знаю, не работают для массивов.

Например:

идентификатор сотрудника = мои параметры[1]; имя_сотрудника = мои параметры[4]; Адрес сотрудника = мои параметры[6];

Вы должны знать, что индексы 1, 4, 6 на самом деле относятся к этим значениям.

В качестве дополнительного примечания, object[] связан интерфейсом, поэтому нет способа отключить тип.


person 4thSpace    schedule 25.06.2013    source источник
comment
Вы всегда можете сделать myVarArgMethod("first-name", "Joe", "last-name", "Shmoe", "dob", new DateTime(2001, 1, 1))   -  person Sergey Kalinichenko    schedule 25.06.2013
comment
Являются ли эти отрицательные голоса автоматическими через ботов? Они случаются почти сразу. Не похоже на человека. stackoverflow должен исправить это.   -  person 4thSpace    schedule 26.06.2013
comment
Я серьезно сомневаюсь, что вокруг есть даунвотинговые боты. Скорее всего, кто-то из зрителей этого вопроса не понял, о чем вы спрашиваете, и решил выразить свое неодобрение голосованием. Я видел, как это происходит; SO не будет обращать внимание, пока это не мошенничество.   -  person Sergey Kalinichenko    schedule 26.06.2013
comment
Ok. Думаю, я не вижу ценности в процессе голосования. Предоставленный ответ сделал две вещи: дайте мне знать, что это, вероятно, единственный способ, и предоставил решение.   -  person 4thSpace    schedule 26.06.2013
comment
Это хороший ответ, да. Я не думаю, что избиратели не торопились с решением. Я думаю, что это вопрос ОК, поэтому я проголосую за него :)   -  person Sergey Kalinichenko    schedule 26.06.2013
comment
@4thSpace Нет. Это автоматические люди, которые голосуют против.   -  person Undo    schedule 26.06.2013
comment
У модераторов, надеюсь, я разъяснил вопрос лучше, чтобы снять холд. Не уверен, что это значит для всех отрицательных голосов. Спасибо @dasblinkenlight.   -  person 4thSpace    schedule 27.06.2013


Ответы (1)


Вы должны использовать коллекцию ключ-значение (т.е. Dictionary, HashSet), а не чистый массив объектов для достижения желаемого эффекта.

person sgnsajgon    schedule 25.06.2013