2010-11-06 5 views
2

Я недавно экспериментировал с функциями профиля ASP.NET. У меня возникла проблема с отображением свойства «веб-сайт». Например, если я вхожу в веб-сайт: ASP.NET MVC Url проблема с отображением

facebook.com/contactalig
, и я его визуализирую с помощью
<a href="<%: Profile.Website %>"><%: Profile.Website %></a>
он отображается на экране как
http://localhost:51225/users/facebook.com/contactalig
Первоначально я думал, что могу просто добавить «http: //», если он не содержит одного, но я чувствуйте, что должно быть более чистое решение.

Заранее спасибо.

ответ

3

Без протокола и т. Д. Это не абсолютный uri, поэтому браузер (правильно) рассматривает его как относительно текущего URL-адреса.

Итак, да: проверьте протокол. Возможно, для этого достаточно StartsWith, иначе существует регулярное выражение или, возможно, Uri.TryCreate (или что-то еще), определяющее абсолютное значение.

Лично я сделал бы эту проверку в точке ввода данных, а не на дисплее.