0

我试图找出应用[DataType(DataType.Something)]属性时 EF DataAnnotations 的有效选项。查看 MSDN 文档,我似乎只能找到有效的 ENUM 值,但找不到任何符合给定数据类型的定义。

具体来说,我正在查看DataType.PhoneNumber我不确定我当前的数据库规范是否支持这一点,因为如果应用它,我找不到任何关于它正在寻找的内容的输入。

所以我的具体问题是,DataType.PhoneNumber对于指定大多数/所有不同 DataType 枚举值的链接的奖励积分,可接受的值是多少。

为了澄清...

当我说可接受的值时,我想知道这三个 5555555555、555-555-5555 和 (555) 555-5555 都是有效的还是只是一个子集?还有其他可接受的值吗?只是不确定这里。(此外,这永远不会看到任何国际化的东西,所以我唯一担心的是美国标准的 10 位数字。

另外,只是为了避免一些(我相信)不必要的解释......我知道这DataType.Something是一个枚举并且本身不包含值......相反,我想知道使用枚举的代码认为什么是有效的。

DataType 枚举的 MSDN 参考

4

1 回答 1

1

我目前无法测试,但我假设注释在它们装饰的输入字段中声明了正则表达式模式,如果您检查输出 html,您可能会发现设置了模式属性,这应该可以帮助您确定什么可以通过。在线正则表达式测试器将帮助您测试什么是可能的。

我使用了dataannotationsextentions nuget 包。它还扩展了当前可用的选项,因此如果您发现当前的电话号码注释不适合您的方式,您应该能够创建一个自定义验证器,该验证器应用适合您的条件的正则表达式。

干杯蒂姆

于 2013-04-08T05:31:00.770 回答