pro*_*cma 4 c# methods attributes
我正在寻找一个属性编写代码来指定参数范围,例如它适用于属性.我需要一个方法.
对于财产存在(和有效)的类比:
[Range(0,10)]
public int MyProperty{ get; set; }
Run Code Online (Sandbox Code Playgroud)
方法有什么比喻吗?(下面是我的伪代码):
[Range(0,10,"MyParameter")]
public void MyMethod(int MyParameter){...}
Run Code Online (Sandbox Code Playgroud)
我知道有另一种选择
throw new ArgumentOutOfRangeException();
Run Code Online (Sandbox Code Playgroud)
但我要求在属性中替代.
有帮助吗?
语法看起来有点像这样:
public void MyMethod([Range(0,10)] int MyParameter)
{
...
}
Run Code Online (Sandbox Code Playgroud)
谢天谢地,内置RangeAttribute支持AttributeTargets.Parameter,所以这将编译.但是,是否强制执行这完全取决于如何使用它.您需要某种验证框架来检查参数的有效范围..NET框架不会在所有方法调用上自动为您执行此操作.
| 归档时间: |
|
| 查看次数: |
3395 次 |
| 最近记录: |