Статьи

Код с учетом регистра

Много раз я был свидетелем ситуации, когда C # и платформа .NET чувствительны к регистру. Кажется, это вызывает проблемы у старых разработчиков Windows, которые мигрировали из Visual Basic. Одна конкретная проблема, с которой я недавно столкнулся в приложении ASP.NET, была обнаружена в файле Web.config. Следующая строка вызвала проблему с приложением, и разработчик не мог понять, почему:



Теперь это не недействительный XML, но он соответствует дизайну элемента appSettings ASP.NET. Элемент файла web.config — это место для хранения строк подключения, имен серверов, путей к файлам и других различных настроек, необходимых приложению для выполнения работы. Обратите внимание, что первая буква настроек имеет заглавные буквы, и тот факт, что она не была заглавной, вызвал проблему. Сервер возвращает следующую ошибку при запуске приложения:

Нераспознанный раздел конфигурации ‘appsettings’

Теперь мне потребовалось несколько секунд, чтобы осознать проблему, но это иллюстрирует тот факт, что платформа .NET в значительной степени учитывает регистр, если вы не используете VB.NET в качестве языка (но Web.config остается чувствительным к регистру независимо от языка ). Правильная запись Web.config будет:



Эти проблемы существуют и в языках C # и J #, но они могут быть обнаружены во время компиляции.