Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
private string makeUrlAbsolute(string url)
{
isWebPartPropertiesError = false;
try
{
if (!string.IsNullOrEmpty(url))
{
bool shouldCheckForRootWeb = false;
if (!url.StartsWith("http://"))
{
if (url.StartsWith("//")) throw new Exception("Неправильная ссылка");
if (!url.StartsWith("/")) url = url.Insert(0, "/");
url = url.Insert(0, SPContext.Current.Site.Url);
shouldCheckForRootWeb = true;
}
using (SPSite site = new SPSite(url))
{
using (SPWeb web = site.OpenWeb())
{
if (!url.Contains(web.Url)) isWebPartPropertiesError = true;
if (shouldCheckForRootWeb && site.Url.Equals(web.Url)) isWebPartPropertiesError = true;
return url;
}
}
}
else return "";
}
catch
{
isWebPartPropertiesError = true;
return "";
}
//this.CatalogIconImageUrl = this.ClassResourcePath + "/Test.ico";
//this.TitleIconImageUrl = this.ClassResourcePath + "/Test.ico";
}
Продолжаю серию мегаполезных хелперов.
Эта страхолюдина найдена там же где и пред. кусок.
Судя по названию, она должна делать урл абсолютным...
(SPSite и др., это SharePoint API если кто не в курсе)
Понравилось всё, начиная от шаринга isWebPartPropertiesError, заканчивая перехватом собственного исключения с дальнейшим затиранием всех следов.
Зато автор использует "string.IsNullOrEmpty", хотя стоило написать:
if (string.IsNullOrEmpty(url))
{
return "";
}
хотя после увиденного это уже не принципиально 🙂
Зато автор использует "string.IsNullOrEmpty", хотя стоило написать:
if (string.IsNullOrEmpty(url))
{
return "";
}
хотя после увиденного это уже не принципиально 🙂