检查通过 AJAX 方法提交的用户输入
本文关键字:用户 输入 提交 方法 AJAX 检查 | 更新日期: 2023-09-27 18:32:52
Iv'e 创建了一个通用处理程序 (.ashx) 来处理来自 html 页面中某些下拉列表中的一些简单输入。 我知道我应该检查数据以确保它有效,所以我创建了以下代码
string ProjectNumber = context.Request.Form["JobNumber"];
string ProjectShare = context.Request.Form["ProjectShare"];
if (ProjectNumber == null || ProjectNumber == string.Empty) {
throw new Exception("Project number cannot be empty or null");
}
if (ProjectShare == null || ProjectShare == string.Empty) {
throw new Exception("Project Share cannot be empty or null");
}
有没有更好的方法来处理此输入
您可以使用
System.String.IsNullOrEmpty()
方法并确保在将数据传递给处理程序之前执行客户端/js 验证。
您应该对输入值强制实施更多验证规则(而不仅仅是"空/空"字符串检查)。这取决于值的用途。一些基本的验证是数据类型,数据范围,格式等检查。您可以定义单独的验证类来验证用户输入,以便可以在其他位置重用验证代码;例如:
public class DataValidator
{
public ValidationResult ValidateProjectNumber(string projectNumber)
{
//ProjectNumber validation rules...
if (string.IsNullOrWhiteSpace(projectNumber))
return new ValidationResult("Project number is requried.");
int projectId;//say your project number is int.
if (int.TryParse(projectNumber, out projectId))
return new ValidationResult(string.Format("Project Number '{0}' is not a valid number."));
// more checks....
return ValidationResult.Success;
}
public ValidationResult ValidateProjectShare(string projectShare)
{
//projectShare validation rules...
return ValidationResult.Success;
}
}
我还建议,不要为无效输入抛出异常。而是将验证结果作为 JSON/xml 发送到客户端,并以用户友好的方式显示错误消息。