本文整理汇总了C#中HomeController.Execute方法的典型用法代码示例。如果您正苦于以下问题:C# HomeController.Execute方法的具体用法?C# HomeController.Execute怎么用?C# HomeController.Execute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HomeController
的用法示例。
在下文中一共展示了HomeController.Execute方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WhenUnableToResolveThenShouldContinueSilentlyTest
public void WhenUnableToResolveThenShouldContinueSilentlyTest()
{
// arrange
var action = new HomeController().Action(e => e.Index());
// act
var controllerContext = action.Execute();
// assert
Assert.AreEqual("service is null", controllerContext.Controller.ViewBag.ServiceMessage);
}
示例2: Application_Error1
protected void Application_Error1(object sender, EventArgs e)
{
Exception exception = Server.GetLastError();
if (exception != null)
{
Response.Clear();
HttpException httpException = exception as HttpException;
RouteData routeData = new RouteData();
routeData.Values.Add("controller", "Home");
if (httpException == null)
{
if (Context.Request.RequestContext.RouteData.Values["action"] == "Index")
{
routeData.Values.Add("action", "Error");
}
else
{
routeData.Values.Add("action", "AjaxError");
}
if (exception != null)
{
Trace.TraceError("Error occured and caught in Global.asax - {0}", exception.ToString());
}
}
else
{
switch (httpException.GetHttpCode())
{
case 404:
if (Context.Request.RequestContext.RouteData.Values["action"] == "Index")
{
routeData.Values.Add("action", "PageNotFound");
}
else
{
routeData.Values.Add("action", "AjaxPageNotFound");
}
break;
case 500:
if (Context.Request.RequestContext.RouteData.Values["action"] == "Index")
{
routeData.Values.Add("action", "ServerError");
}
else
{
routeData.Values.Add("action", "AjaxServerError");
}
Trace.TraceError("Server Error occured and caught in Global.asax - {0}", exception.ToString());
break;
default:
if (Context.Request.RequestContext.RouteData.Values["action"] == "Index")
{
routeData.Values.Add("action", "Error");
}
else
{
routeData.Values.Add("action", "AjaxError");
}
Trace.TraceError("Error occured and caught in Global.asax - {0}", exception.ToString());
break;
}
}
Server.ClearError();
Response.TrySkipIisCustomErrors = true;
IController errorController = new HomeController();
errorController.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));
}
}
示例3: Application_Error
void Application_Error()
{
ResetContext();
ServiceFactory EventLogFactory = new ServiceFactory();
Exception exception = Server.GetLastError();
if (exception != null)
{
Response.Clear();
HttpException httpException = new HttpException(exception.Message, exception);
var cxt = new HttpContextWrapper(Context);
RouteData routeData = new RouteData();
routeData.Values.Add("controller", "Home");
string ModuleNam ="/"+ Context.Request.RequestContext.RouteData.Values["controller"].ToString()+"/";
string FunctionName = Context.Request.RequestContext.RouteData.Values["action"].ToString();
string ExceptionalType = exception.Message;
string ExceptionalDescription = exception.ToString();
string State = "1";
if (httpException != null)
{
switch (httpException.GetHttpCode())
{
case 404:
if (Context.Request.RequestContext.RouteData.Values["action"].ToString() == "Index")
{
routeData.Values.Add("action", "PageNotFound");
routeData.Values.Add("PageNotFoundLog", exception.Message);
}
else
{
routeData.Values.Add("action", "AjaxPageNotFound");
routeData.Values.Add("AjaxPageNotFoundLog", exception.Message);
}
break;
case 500:
if (Context.Request.RequestContext.RouteData.Values["action"].ToString() == "Index")
{
routeData.Values.Add("action", "ServerError");
routeData.Values.Add("ServerErrorLog", exception.Message);
}
else
{
routeData.Values.Add("action", "AjaxServerError");
routeData.Values.Add("AjaxServerErrorLog", exception.Message);
}
Trace.TraceError("Server Error occured and caught in Global.asax - {0}", exception.ToString());
break;
default:
if (Context.Request.RequestContext.RouteData.Values["action"].ToString() == "Index")
{
routeData.Values.Add("action", "Error");
routeData.Values.Add("ErrorLog", exception.Message);
routeData.Values.Add("errorCode", httpException.GetHttpCode());
}
else
{
routeData.Values.Add("action", "AjaxError");
routeData.Values.Add("AjaxErrorLog", exception.Message);
routeData.Values.Add("errorCode", httpException.GetHttpCode());
}
Trace.TraceError("Error occured and caught in Global.asax - {0}", exception.ToString());
break;
}
}
EventLogFactory.GetService<IExceptionalLogService>().CreateExceptionLog(ModuleNam, FunctionName, ExceptionalType, ExceptionalDescription, State);
Server.ClearError();
Response.TrySkipIisCustomErrors = true;
IController errorController = new HomeController();
errorController.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));
}
}