当前位置: 首页>>代码示例>>C#>>正文


C# ApiController.GetType方法代码示例

本文整理汇总了C#中ApiController.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# ApiController.GetType方法的具体用法?C# ApiController.GetType怎么用?C# ApiController.GetType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ApiController的用法示例。


在下文中一共展示了ApiController.GetType方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TestExceptionFilter

        private static void TestExceptionFilter(ApiController controller, Exception expectedException,
            Action<HttpConfiguration> configure)
        {
            // Arrange
            Exception actualException = null;
            IHttpRouteData routeData = new HttpRouteData(new HttpRoute());

            using (HttpRequestMessage request = new HttpRequestMessage())
            using (HttpConfiguration configuration = new HttpConfiguration())
            using (HttpResponseMessage response = new HttpResponseMessage())
            {
                HttpControllerContext context = new HttpControllerContext(configuration, routeData, request);
                HttpControllerDescriptor controllerDescriptor = new HttpControllerDescriptor(configuration,
                    "Ignored", controller.GetType());
                context.Controller = controller;
                context.ControllerDescriptor = controllerDescriptor;

                if (configure != null)
                {
                    configure.Invoke(configuration);
                }

                Mock<IExceptionFilter> spy = new Mock<IExceptionFilter>();
                spy.Setup(f => f.ExecuteExceptionFilterAsync(It.IsAny<HttpActionExecutedContext>(),
                    It.IsAny<CancellationToken>())).Returns<HttpActionExecutedContext, CancellationToken>(
                    (c, i) =>
                    {
                        actualException = c.Exception;
                        c.Response = response;
                        return Task.FromResult<object>(null);
                    });

                configuration.Filters.Add(spy.Object);

                // Act
                HttpResponseMessage ignore = controller.ExecuteAsync(context, CancellationToken.None).Result;
            }

            // Assert
            Assert.Same(expectedException, actualException);
        }
开发者ID:KevMoore,项目名称:aspnetwebstack,代码行数:41,代码来源:ApiControllerTest.cs

示例2: SetControllerInfo

 /// <summary>Sets controller info in WebCallInfo object. Call it from ApiController.Init method after calling base Init method. </summary>
 public static void SetControllerInfo(this WebCallContext webCallContext, ApiController controller) {
   if(webCallContext == null) // should never happen if you use WebMessageHandler
     return;
   webCallContext.ControllerName = controller.GetType().Name;
   object action;
   // Note: this works for regular routing, not for attribute routing
   controller.ControllerContext.RouteData.Values.TryGetValue("action", out action);
   webCallContext.MethodName = string.Empty + action; //safe ToString() method
 }
开发者ID:yuanfei05,项目名称:vita,代码行数:10,代码来源:WebHelper.cs


注:本文中的ApiController.GetType方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。