繁体   English   中英

在服务器端验证表单

[英]Validate form on server side

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

啊,我明白了。 例如,假设您有一个用户类,它将用于显示有问题的页面表单

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

页面加载事件时,将使用相关事件值加载此对象,并且它们使用加载的对象显示页面表单。 让我们将此对象称为“ LoadedUser”

用户单击重定向链接后,您需要处理该事件(我知道您正在做),在这种情况下,请使用页面表单上的当前值创建一个新的User对象,然后将其称为“ NewLoadedUser”通过使用IEquatable接口将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标志更新记录或不更新记录。

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM