как предотвратить SQL-инъекция на веб-сайте asp.net

Для ввода электронной почты в текстовое поле пользователем я проверяю на стороне клиента, является ли это электронным письмом действительным или нет

 string emailexist = "SELECT COUNT(DISTINCT UserID) as count FROM tbl_user WHERE Email=@Email ";     


   <asp:RegularExpressionValidator ID="RegularExpressionValidator2" ValidationGroup="Login" ControlToValidate="txtUserName"
                            ValidationExpression="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" CssClass="Error"
                             runat="server" />

достаточно ли этого регулярного выражения, чтобы предотвратить внедрение sql для электронной почты.

Другой текст:

   string groupExistQuery = "SELECT COUNT(DISTINCT GroupID) as count FROM tbl_group WHERE GroupName=@GroupName";   

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

5
задан Joel Coehoorn 17 November 2011 в 14:53
поделиться