MVC DataAnnotations URL验证

Nel*_*eis 6 data-annotations asp.net-mvc-3

我正在使用ASP.NET MVC3并尝试使用DataAnnotationsExtensions 验证URL字段.

这几乎就是我的需要.但是,它强制用户在URL字符串的开头添加"http://",否则,它将显示以下验证消息:

The URL field is not a valid fully-qualified http, https, or ftp URL.
Run Code Online (Sandbox Code Playgroud)

在Data Annotations Extensions URL 演示页面中,它显示了一个额外的验证器UrlWithoutProtocolRequired,但我无法在任何地方找到它.

如何使用此验证器,或者如何在没有"http://"部分的情况下轻松验证URL?

Sco*_*and 11

DataAnnotationsExtensions的无协议选项在源代码中可用,但被认为是beta或"vNext",并且尚未作为NuGet包的一部分发布.因此,如果您下载源代码并进行编译,您将看到[Url]属性有一个重载[Url(requireProtocol:false)].您可以在最新的UrlAttribute.cs文件(UrlArribute.cs)中看到这一点.此外,如果你查看DataAnnotationsExtensions 维基,你会看到这个功能计划很快发布(我想在下一周或者下一个官方的下一个版本).


Hug*_*rio 6

只是为了完成这个:

由于MVC3现在我们可以使用[URL]验证属性.

[Required]
[Url]
public string Website { get; set; }
Run Code Online (Sandbox Code Playgroud)

  • 丁丁丁!我们有一个胜利者! (2认同)