private static void FetchScript(string relativeUrl, StringBuilder buffer)
{
buffer.AppendLine("/***** " + relativeUrl + " *****/");
try
{
string fileName = HttpContext.Current.Server.MapPath(relativeUrl);
fileName = FindFile(fileName);
if (File.Exists(fileName))
{
buffer.AppendLine(File.ReadAllText(fileName));
return;
}
}
catch (HttpException)
{ } // Invalid file path, so try to retrieve via HTTP
string absoluteUrl = UrlHelper.ResolveAbsoluteUrl(relativeUrl);
HttpWebRequest request = CreateHttpWebRequest(absoluteUrl);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
string responseContent = reader.ReadToEnd();
buffer.AppendLine(responseContent);
}
}
}