System.Web.HttpException.FillDefaultErrorValues C# (CSharp) Method

FillDefaultErrorValues() private method

private FillDefaultErrorValues ( bool showTrace, bool showExceptionType, Exception baseEx, System.Web.ExceptionPageTemplateValues values ) : void
showTrace bool
showExceptionType bool
baseEx Exception
values System.Web.ExceptionPageTemplateValues
return void
		void FillDefaultErrorValues (bool showTrace, bool showExceptionType, Exception baseEx, ExceptionPageTemplateValues values)
		{
			if (baseEx == null)
				baseEx = this;
			
			values.Add (ExceptionPageTemplate.Template_PageTitleName, String.Format ("Error{0}", http_code != 0 ? " " + http_code : String.Empty));
			values.Add (ExceptionPageTemplate.Template_ExceptionTypeName, showExceptionType ? baseEx.GetType ().ToString () : "Runtime error");
			values.Add (ExceptionPageTemplate.Template_ExceptionMessageName, http_code == 404 ? "The resource cannot be found." : HtmlEncode (baseEx.Message));

			string tmp = http_code != 0 ? "HTTP " + http_code + "." : String.Empty;
			values.Add (ExceptionPageTemplate.Template_DescriptionName, tmp + (http_code == 404 ? ERROR_404_DESCRIPTION : HtmlEncode (Description)));

			if (!String.IsNullOrEmpty (resource_name))
				values.Add (ExceptionPageTemplate.Template_DetailsName, "Requested URL: " + HtmlEncode (resource_name));
			else if (http_code == 404)
				values.Add (ExceptionPageTemplate.Template_DetailsName, "No virtual path information available.");
			else if (baseEx is HttpException) {
				tmp = ((HttpException)baseEx).Description;
				values.Add (ExceptionPageTemplate.Template_DetailsName, !String.IsNullOrEmpty (tmp) ? HtmlEncode (tmp) : "Web exception occurred but no additional error description given.");
			} else {
				var sb = new StringBuilder ("Non-web exception.");

				tmp = baseEx.Source;
				if (!String.IsNullOrEmpty (tmp))
					sb.AppendFormat (" Exception origin (name of application or object): {0}.", HtmlEncode (tmp));
				tmp = baseEx.HelpLink;
				if (!String.IsNullOrEmpty (tmp))
					sb.AppendFormat (" Additional information is available at {0}", HtmlEncode (tmp));
				
				values.Add (ExceptionPageTemplate.Template_DetailsName, sb.ToString ());
			}
			
			if (showTrace)
				values.Add (ExceptionPageTemplate.Template_StackTraceName, HtmlEncode (baseEx.StackTrace.ToString ()));
		}