1

我正在编写一个 Visual Studio 扩展。我有一个代表选项页面的 C# 类。选项由公共属性表示,如下所示:

public class OptionsPageGeneral : DialogPage
{
  [Range(1, 100)]
  [Category("Misc")]
  [DisplayName("Integer option")]
  public string IntOption { get; set; }
  ...
}

在此处输入图像描述

我正在尝试使用验证属性来限制用户输入。但是,对于给定的代码,用户仍然可以输入任何值,不仅来自 [1; 100] 范围。RangeAttribute

我见过很多 ValidationAttribute 用法的例子,但都是针对 ASP.NET MVC 项目的。该属性是否仅适用于该上下文?

无论如何,如何验证在选项页面中完成的用户输入?我知道我可以简单地覆盖属性set方法,但验证属性需要编写的代码少得多,并且可以重复用于类似的属性。

4

1 回答 1

0

我不知道如何使用选项页面,但是如果您想要 1-100 之间的范围而不是Range.

  [Category("Misc")]
  [DisplayName("Integer option")]
  [RegularExpression(@"[0-9]{2}")]//This will only allow you to enter only 2 digits
  public string IntOption { get; set; }
于 2012-11-30T13:20:55.063 回答