Так как требуется сравнить значение поиска с String
или Number
. Вы можете попытаться преобразовать его в Number
и вернуться к исходному строковому значению, если преобразование не удастся (т. Е. Когда parseInt
вернет NaN
):
SearchValue = parseInt(SearchValue) || SearchValue;
Тогда просто используйте строгое сравнение: [118 ]
postnummer[i][k] === SearchValue
Таким образом вы сохраните возможность сравнивать как по числовым, так и по строковым значениям.
Это - то, для чего файл Properties/AssemblyInfo.cs.
Существует две версии в том файле, версии файла и версии блока:
[assembly: AssemblyVersion("1.1.0.256"]
[assembly: AssemblyFileVersion("1.1.0.256")]
После того как они установлены, можно использовать их для отслеживания версий Вас двоичные файлы. Это легко просматривается в проводнике щелчком правой кнопкой-> свойства.
Ни один из dll или имен exe, включенных в приложения Microsoft (и ОС), не использует ту конвенцию.
Другие системы будут использовать эти числа, чтобы разрешить зависимости и проверить версию. Например, система MSI обновит двоичные файлы на основе свойств версии.
Руководство по проектированию платформы Krzysztof Cwalina и Brad Abrams из Microsoft предлагает блок, называющий как
<Company>.<Component>.dll
Я далее поддерживаю это (не использование версии #), потому что GAC и dll свойства файла покажут версию.
Я знаю индикаторы версии использования веб-сайта DevExpress как часть их имен сборки, такие как XtraEditors8.2.dll. Я предполагаю, что причина состоит в том, что Вы хотите смочь иметь несколько версий блока, расположенного в том же каталоге. Например, у нас есть приблизительно 15 smartclients, которые распределяются как часть той же оболочки/клиента. Каждый smartclient может иметь различную версию средств управления DevExpress, и поэтому мы должны смочь иметь XtraEditors7.1.dll и XtraEditors8.2 существующий в том же каталоге.
Я сказал бы, что, если у Вас есть общие библиотеки, которые являются зависимостями допускающих повторное использование модулей и могут существовать в нескольких версиях 1.0, 1.1, 1.2 и т.д. затем, это был бы допустимый аргумент, что номера версий могли быть включены в имя для предотвращения коллизий. Учитывая, что общее освобождает, не живут в GAC.
Я не знаю ни о чем авторитетном, но мне казалось бы, что использование последовательного имени упростит все от процесса сценариев установки к документации. Учитывая, что можно сохранить версию как метаданные по файлу, я не знаю, почему это было бы необходимо в имени файла. Почему настроенный себя для стычки необходимости составлять названный файлами?
просто посмотрите на платформу.NET или любой другой продукт Microsoft в этом отношении. при помещении номера версии, поскольку часть имени сборки походит на плохую идею.
Существует место для этого (и другая информация) в разделе метаданных блока. (AssemblyInfo.cs)
Этой информацией может быть представление в Windows Explorer (диалоговое окно свойств, строка состояния, подсказка - они все показывают эту информацию).
Я думаю, что основная идея поместить номер версии в имя файла DLL принесена от DLL Черт, где, имея несколько версий DLL, все с тем же именем вызвали проблемы (т.е. какую фактическую версию DLL Вы имеете, и это имеет необходимые функции, и т.д.).
Платформа.NET обрабатывает зависимости, полностью отличающиеся по сравнению с файлами DLL C/C++, которые являются более традиционными, возможно иметь несколько версий библиотеки в GAC, главным образом потому что GAC является 'поддельной' папкой, которая связывается с другими файлами в файловой системе, в дополнение к способности включать блоки с Вашей исполняемой установкой (та же папка развертываются, и т.д.).
Информация о версии может содержаться в assemblyInfo файле и может затем быть запрошена через отражение и т.д.
Некоторые поставщики включают номер версии в имя, чтобы помочь видеть сразу, каково это. Microsoft dll имена не содержит номер версии в каталоге платформы.
Так как версия может быть установлена, поскольку свойство не это полу избыточный?
Я также пошел бы на конечность и предположил бы, что MS не имеет стандарта, учитывая беглый взгляд на их имена DLL: user32.dll, tcpmon.dll, winsock.dll, и т.д.