Taras Kovalenko
Taras Kovalenko

Reputation: 2393

web api start html page

I have web api project and I have *.html page and I need run it after run my project but I don't know how do it. In MVC I use MapRoute like this:

  routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );

But I don't know how do it in web api. I have next routes config:

config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{action}/{id}", new { id = RouteParameter.Optional });

and how to add other config for run my html page? Thanks.

Upvotes: 2

Views: 1998

Answers (2)

Taras Kovalenko
Taras Kovalenko

Reputation: 2393

I use Like this code into the WebApi project:

public class DefaultController : ApiController
    {
        /// <summary>
        /// Default controller for render swagger UI 
        /// </summary>
        /// <returns></returns>
        [HttpGet, Route("")]
        public RedirectResult Index()
        {
            var requestUri = Request.RequestUri;
            return Redirect(requestUri.AbsoluteUri + "swagger/ui/index");
        }
    }

Upvotes: 1

David Abaev
David Abaev

Reputation: 696

This code how you add new routing:

 config.Routes.MapHttpRoute(
                    name: "ApiWithAction",
                    routeTemplate: "api/{controller}/{action}/{id}",
                    defaults: new { id = RouteParameter.Optional }
                );

     config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

Now just write route to your static file

Upvotes: 2

Related Questions