作者:不及格的程序员-八神

MSDN 根本没有说它不可以继承, 事实上它真是不能继承.

在SupportsEventValidationAttribute类的源码中可以看到注释
Note that this attribute does not inherit from the base class, since derived classes may not be able to validate properly.

我更愿意看到比较明确的声明,例如:
[AttributeUsageAttribute(AttributeTargets.Class, Inherited = false, AllowMultiple = false)],而它没有这样声明.

看看可序列化特性的声明,明确了它不能继承,所以我们在写要序列化类时必须带有该特性的声明.

[AttributeUsageAttribute(AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Enum|AttributeTargets.Delegate, Inherited = false)]
public sealed class SerializableAttribute : Attribute

这个属性是ASP.NET 2.0新增的 是为了验证用户控件回发的数据有效性 比如下拉列表盒,本身提供1到31天的选择,但是客户端修改了数据 提交了一个32的值,那么这时ASP.NET框架就会抛出异常,说提交数据非法. 有很多控件都会作这样的验证,如:Dropdownlist checkbox... 开发用户自定义控件,如果要验证数据的安全性,可以参考一下.

自定义服务器控件 继承不到父类/基类的 SupportsEventValidation 特性.相关推荐

  1. C++ day22 继承(二)基类指针数组通过虚方法实现智能的多态

    继承一共有三种: 公有继承 私有继承 保护继承 文章目录 公有继承 基类和派生类的关系 is-a(用公有继承表示"是一种"的关系) has-a uses-a is-like-a i ...

  2. C++虚继承中的虚基类表

    虚继承主要解决多重继承会在子类中存在多份拷贝的问题,这不仅浪费空间,而且存在二义性. 在之前的 C++ 继承中已经说过虚继承基本概念,这里不再赘述.这篇文章主要探究虚继承的原理.文章中多处给出了类实例 ...

  3. C++中虚继承产生的虚基类指针和虚基类表,虚函数产生的虚函数指针和虚函数表

    本博客主要通过查看类的内容的变化,深入探讨有关虚指针和虚表的问题. 一.虚继承产生的虚基类表指针和虚基类表 如下代码:写一个棱形继承,父类Base,子类Son1和Son2虚继承Base,又来一个类Gr ...

  4. C++多继承中重写不同基类中相同原型的虚函数

    在C++多继承体系当中,在派生类中可以重写不同基类中的虚函数.下面就是一个例子: class CBaseA  {  public:  virtual void TestA();  };  class ...

  5. C++学习 十五、类继承(1)基类,派生类,访问权限,protected

    C++学习 十五.类继承(1)基类,派生类 前言 类继承 类的关系与继承 基类, 派生类 基类 派生类 构造函数,析构函数 文件位置 访问权限 protected 后记 前言 本篇开始学习C++类的继 ...

  6. Java接口、基类、抽象类详解(图解接口、继承和实现、基类和抽象类的区别等)——Java基础系列

    文章目录 前言 总览(必看) 一.接口是"契约" 二.接口实例--Servlet接口 三.抽象标识符abstract和抽象类 四.基类作为"辅助" 求支持 前言 ...

  7. php 继承内核中的基类,继承类上的PHP new self()正在创建一个基类对象

    参见英文答案 > New self vs. new static                                    3个 我有一个充当基类的类.然后我有几个继承它的类.我想开 ...

  8. asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?...

    继承是比较简单的,比如在Designer.cs中有一个类叫 Text100,可以在Text.cs中直接写: public class Text //这个就是基类 { private int _leng ...

  9. 非多态的继承情况下,基类指针可以指向派生类对象么?

    class Base { // 基类 public:Base(int aa=88) : a(aa) {}void f() { // 非virtualcout<<"Base&quo ...

最新文章

  1. 黄学东出任微软全球人工智能首席技术官!微软首位华人技术院士全面负责Azure云AI...
  2. Intellij Idea: Thymeleaf 命名空间th报错
  3. 解决Error: That port is already in use.
  4. 坐标北京,Paddle Lite​ 线下交流会,助力算法落地​
  5. 粗糙集的基础理论汇总
  6. MDX Step by Step 读书笔记(四) - Working with Sets (使用集合)
  7. C#常见错误解决方法
  8. 切片与MapTask并行度决定机制
  9. Androidstudio加载工程很慢解决方案
  10. 用BeautifulSoup爬取豆瓣妹子的图片
  11. 北向接口jms消息服务器,运行日志 - eSight V300R010C00SPC600 维护指南 18 - 华为
  12. d6u android,天敏D6U_Android4.4.2_SONY BRAVIA_精简优化双启动版
  13. win10系统电脑提示此程序被组策略阻止的解决办法
  14. 关于hi3516ev100调试zbar二维码和链接wifi问题
  15. WebView获取当前网页的页面元素
  16. Epoch、Step和BatchSize的区别
  17. Visual Studio 2019 打包生成.exe安装文件,附带.net框架与自定义安装插件
  18. google在线翻译二
  19. 工业控制计算机系统总线,工业控制计算机总线技术.ppt
  20. “我要做太空人”----太空人表盘制作

热门文章

  1. javaScript由哪些部分组成?
  2. Spring @SessionAttributes @ModelAttribute
  3. IBatis Map时间参数文字格式不匹配!
  4. 远程接入构建企业信息的计划时代--极通EWEBS
  5. 深度剖析数据在内存中的存储2——浮点数数在内存中的存储
  6. Spring boot 注解 ConfigurationProperties 的使用
  7. 【高性价比】AIO-3288C四核高性能主板
  8. 基于 HTML5 的工业互联网云平台监控机房 U 位
  9. 06-Windows Server 2012 R2 会话远程桌面-标准部署-RD网关(RemoteApp)
  10. A星算法(Java实现)