MS Exam 70-536 - Как вы можете ограничить ввод, прежде чем писать какой-либо код? - PullRequest
3 голосов
/ 14 марта 2010

В MS Exam 70-536 .Net Foundation , Глава 3 «Поиск, изменение и кодирование текста» в сценарии 1

Ваша организация, Northwind Traders, создает веб-приложение, которое позволяет клиенты вводят свои собственные контактные данные в вашу базу данных. Как новый сотрудник, перед вами стоит простая задача: создать интерфейсный интерфейс и подготовить пользовательский ввод для хранения в базе данных ...

есть вопрос:

Как вы можете ограничить ввод, прежде чем писать какой-либо код?

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

А может, это какой-то другой способ?

Ответы [ 4 ]

8 голосов
/ 14 марта 2010

О каком входе идет речь?

TextBox (по крайней мере, в Windows Forms) имеет множество свойств, которые могут ограничивать ввод без написания кода. Например, MaxLength не позволит пользователю ввести строку, превышающую определенную длину. CharacterCasing заставит текст в верхнем или нижнем регистре.

Точно так же элементы управления, такие как MaskedTextBox, DateTimePicker или NumericUpDown, разрешают ввод без возможности произвольного ввода текста, поэтому пользователь может быть ограничен определенным типом (DateTime или Decimal).

2 голосов
/ 08 мая 2010

Где-то ближе к середине книги вы найдете некоторые атрибуты, называемые StringInputValidators ........ здесь смотрите ниже ....

[ConfigurationProperty("lastUser", DefaultValue = "User", IsRequired = true)]
[StringValidator(InvalidCharacters  = ""!@#$%^&")] // and etc
public string LastUser
{   // get and set accessor code logic in here. }

Должно быть совершенно очевидно, что это делает, это один из способов ограничения того, какой текст будет применен к строковому свойству. Это «кодовый» способ ofc, но я не знаю, как это сделать через интерфейс VS, если есть такой способ применения атрибутов, как этот. Тем не менее, он частично отвечает на ваш вопрос.

1 голос
/ 14 марта 2010

Две вещи, которые сразу приходят на ум, это либо ограничение набора символов, либо добавление проверочных ограничений в БД.

Вопрос неясен, и ответ на него может зависеть от того, где должна проводиться проверка, какие технологии используются, и, честно говоря, каково определение «кода». Например, создает ли пользовательский тип, который включает ограничения, квалифицируемый как «код»? Считается ли HTML, если это веб-приложение? Javascript на стороне клиента?

0 голосов
/ 15 марта 2010

Я заметил, что в конце книги есть ответы:)

Ответ. Вы можете использовать отдельные элементы управления ASP.NET RegularExpressionValidator для ограничения ввод для каждого из трех полей. Для валидатора названия компании установите выражение ValidationExpression свойство «[a-zA-Z '-´\s]{1,40}”. For the contact name validator, you can use the regular expression, “[a-zA-Z' -ô´ \ s] {1,30}». Наконец, для средство проверки номера телефона, вы можете использовать встроенное регулярное выражение ASP.NET, «(((\ D {3})?) | (\ D {3} -))? \ D {3} - \ d {4}».

Тем не менее я думаю, что это не правильно, требования к знаниям

Чтобы завершить уроки в этой главе, вы должны быть знакомы с Microsoft Visual Basic или C # и не стесняйтесь выполнять следующие задачи:
■ Создайте консольное приложение в Microsoft Visual Studio, используя Visual Basic или C #.
■ Добавить ссылки на системные библиотеки классов в проект.
■ создавать текстовые файлы.

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