63 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			63 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | ||
|  | using System.Web.Http; | ||
|  | using System.Web.Mvc; | ||
|  | using WebAPI.Areas.HelpPage.ModelDescriptions; | ||
|  | using WebAPI.Areas.HelpPage.Models; | ||
|  | 
 | ||
|  | namespace WebAPI.Areas.HelpPage.Controllers | ||
|  | { | ||
|  |     /// <summary> | ||
|  |     /// The controller that will handle requests for the help page. | ||
|  |     /// </summary> | ||
|  |     public class HelpController : Controller | ||
|  |     { | ||
|  |         private const string ErrorViewName = "Error"; | ||
|  | 
 | ||
|  |         public HelpController() | ||
|  |             : this(GlobalConfiguration.Configuration) | ||
|  |         { | ||
|  |         } | ||
|  | 
 | ||
|  |         public HelpController(HttpConfiguration config) | ||
|  |         { | ||
|  |             Configuration = config; | ||
|  |         } | ||
|  | 
 | ||
|  |         public HttpConfiguration Configuration { get; private set; } | ||
|  | 
 | ||
|  |         public ActionResult Index() | ||
|  |         { | ||
|  |             ViewBag.DocumentationProvider = Configuration.Services.GetDocumentationProvider(); | ||
|  |             return View(Configuration.Services.GetApiExplorer().ApiDescriptions); | ||
|  |         } | ||
|  | 
 | ||
|  |         public ActionResult Api(string apiId) | ||
|  |         { | ||
|  |             if (!String.IsNullOrEmpty(apiId)) | ||
|  |             { | ||
|  |                 HelpPageApiModel apiModel = Configuration.GetHelpPageApiModel(apiId); | ||
|  |                 if (apiModel != null) | ||
|  |                 { | ||
|  |                     return View(apiModel); | ||
|  |                 } | ||
|  |             } | ||
|  | 
 | ||
|  |             return View(ErrorViewName); | ||
|  |         } | ||
|  | 
 | ||
|  |         public ActionResult ResourceModel(string modelName) | ||
|  |         { | ||
|  |             if (!String.IsNullOrEmpty(modelName)) | ||
|  |             { | ||
|  |                 ModelDescriptionGenerator modelDescriptionGenerator = Configuration.GetModelDescriptionGenerator(); | ||
|  |                 ModelDescription modelDescription; | ||
|  |                 if (modelDescriptionGenerator.GeneratedModels.TryGetValue(modelName, out modelDescription)) | ||
|  |                 { | ||
|  |                     return View(modelDescription); | ||
|  |                 } | ||
|  |             } | ||
|  | 
 | ||
|  |             return View(ErrorViewName); | ||
|  |         } | ||
|  |     } | ||
|  | } |