在服务器端验证表单

本文关键字:表单 验证 服务器端 | 更新日期: 2023-09-27 18:06:55

我在asp.net 4.0工作是否有任何方法可以检查服务器端,如果我们离开页面并将控件重定向到另一个页面,然后检查当前表单,是否有任何字段被修改?如果是,那么首先保存该记录,然后重定向到新页面。有没有办法在服务器端检查这个?(文件后面的代码)

在服务器端验证表单

我明白了。作为一个例子,让我们假设你有一个用户类,你将使用它来显示你的页面表单

public class User
    {
        public int Id { get; set; }
        public string Username { get; set; }
        public string Address { get; set; }
    }

on page load事件用相关的值加载这个对象,并使用加载的对象来显示页面表单。我们把这个对象命名为" loadduser "

在用户点击重定向链接后,你需要处理该事件(我知道你在做),并在此事件中创建一个新的用户对象使用当前值的页面表单,然后让我们调用这个对象"NewLoadedUser",现在我们要通过使用等价接口来比较LoadedUser与NewLoadedUser对象。

那么继续把它添加到用户类

public class User: IEquatable<User>
{
    public int Id { get; set; }
    public string Username { get; set; }
    public string Address { get; set; }
    public override int GetHashCode()
    {
        return Id ^ Id.GetHashCode(); // or whatever
    }
    public override bool Equals(object other)
    {
        return this.Equals(other as User);
    }
    public bool Equals(User other)
    {
        return (other != null &&
                other.Id == this.Id &&
                other.Username == this.Username &&
                other.Address == this.Address );
    }
}

在您的代码中这样做之后,您应该能够像这样比较两个对象。

bool areEqual = NewLoadedUser.Equals(LoadedUser);

,然后你可以使用areEqual bool标志来更新或不更新记录。

希望能有所帮助