コード例 #1
0
 public static IRouteBuilder Post <T>(this IRouteBuilder routeBuilder, ICollection <T> set)
 {
     return(routeBuilder.Post(c =>
     {
         Post(c, routeBuilder, set);
     }));
 }
コード例 #2
0
 public static IRouteBuilder <T> Post <T>(this IRouteBuilder <T> routeBuilder)
 {
     return(routeBuilder.Post(c =>
     {
         Post(c, routeBuilder, routeBuilder.Set as ICollection <T>);
     }));
 }
コード例 #3
0
        public static IRouteBuilder <T> Crud <T>(this IRouteBuilder <T> routeBuilder, Methods methods = Methods.Get | Methods.Post | Methods.Put | Methods.Delete, string id = "id")
        {
            if (methods.HasFlag(Methods.Get))
            {
                routeBuilder.Get();
            }
            if (methods.HasFlag(Methods.Post))
            {
                routeBuilder.Post();
            }

            if (methods.HasFlag(Methods.Get | Methods.Put | Methods.Delete))
            {
                var newRouteBuilder = routeBuilder.SubRoute($"{{id}}");
                if (methods.HasFlag(Methods.Get))
                {
                    newRouteBuilder.Get();
                }
                if (methods.HasFlag(Methods.Put))
                {
                    newRouteBuilder.Put();
                }
                if (methods.HasFlag(Methods.Delete))
                {
                    newRouteBuilder.Delete();
                }
                return(newRouteBuilder.Route(routeBuilder.Template, routeBuilder.Set));
            }
            return(routeBuilder);
        }