🧱 added new template for api-endpoint
Co-authored-by: haraldnilsen <harald_998@hotmail.com>
This commit is contained in:
		
							parent
							
								
									a260cb63b7
								
							
						
					
					
						commit
						040c416f14
					
				
					 7 changed files with 134 additions and 5 deletions
				
			
		
							
								
								
									
										32
									
								
								backend/Controllers/WeatherForecastController.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								backend/Controllers/WeatherForecastController.cs
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| using Microsoft.AspNetCore.Mvc; | ||||
| 
 | ||||
| namespace backend.Controllers; | ||||
| 
 | ||||
| [ApiController] | ||||
| [Route("[controller]")]
 | ||||
| public class WeatherForecastController : ControllerBase | ||||
| { | ||||
|     private static readonly string[] Summaries = new[] | ||||
|     { | ||||
|         "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching" | ||||
|     }; | ||||
| 
 | ||||
|     private readonly ILogger<WeatherForecastController> _logger; | ||||
| 
 | ||||
|     public WeatherForecastController(ILogger<WeatherForecastController> logger) | ||||
|     { | ||||
|         _logger = logger; | ||||
|     } | ||||
| 
 | ||||
|     [HttpGet(Name = "GetWeatherForecast")] | ||||
|     public IEnumerable<WeatherForecast> Get() | ||||
|     { | ||||
|         return Enumerable.Range(1, 5).Select(index => new WeatherForecast | ||||
|         { | ||||
|             Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)), | ||||
|             TemperatureC = Random.Shared.Next(-20, 55), | ||||
|             Summary = Summaries[Random.Shared.Next(Summaries.Length)] | ||||
|         }) | ||||
|         .ToArray(); | ||||
|     } | ||||
| } | ||||
|  | @ -1,2 +1,25 @@ | |||
| // See https://aka.ms/new-console-template for more information | ||||
| Console.WriteLine("Hello, World!"); | ||||
| var builder = WebApplication.CreateBuilder(args); | ||||
| 
 | ||||
| // Add services to the container. | ||||
| 
 | ||||
| builder.Services.AddControllers(); | ||||
| // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle | ||||
| builder.Services.AddEndpointsApiExplorer(); | ||||
| builder.Services.AddSwaggerGen(); | ||||
| 
 | ||||
| var app = builder.Build(); | ||||
| 
 | ||||
| // Configure the HTTP request pipeline. | ||||
| if (app.Environment.IsDevelopment()) | ||||
| { | ||||
|     app.UseSwagger(); | ||||
|     app.UseSwaggerUI(); | ||||
| } | ||||
| 
 | ||||
| app.UseHttpsRedirection(); | ||||
| 
 | ||||
| app.UseAuthorization(); | ||||
| 
 | ||||
| app.MapControllers(); | ||||
| 
 | ||||
| app.Run(); | ||||
|  |  | |||
							
								
								
									
										41
									
								
								backend/Properties/launchSettings.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								backend/Properties/launchSettings.json
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | |||
| { | ||||
|   "$schema": "https://json.schemastore.org/launchsettings.json", | ||||
|   "iisSettings": { | ||||
|     "windowsAuthentication": false, | ||||
|     "anonymousAuthentication": true, | ||||
|     "iisExpress": { | ||||
|       "applicationUrl": "http://localhost:17138", | ||||
|       "sslPort": 44374 | ||||
|     } | ||||
|   }, | ||||
|   "profiles": { | ||||
|     "http": { | ||||
|       "commandName": "Project", | ||||
|       "dotnetRunMessages": true, | ||||
|       "launchBrowser": true, | ||||
|       "launchUrl": "swagger", | ||||
|       "applicationUrl": "http://localhost:5212", | ||||
|       "environmentVariables": { | ||||
|         "ASPNETCORE_ENVIRONMENT": "Development" | ||||
|       } | ||||
|     }, | ||||
|     "https": { | ||||
|       "commandName": "Project", | ||||
|       "dotnetRunMessages": true, | ||||
|       "launchBrowser": true, | ||||
|       "launchUrl": "swagger", | ||||
|       "applicationUrl": "https://localhost:7235;http://localhost:5212", | ||||
|       "environmentVariables": { | ||||
|         "ASPNETCORE_ENVIRONMENT": "Development" | ||||
|       } | ||||
|     }, | ||||
|     "IIS Express": { | ||||
|       "commandName": "IISExpress", | ||||
|       "launchBrowser": true, | ||||
|       "launchUrl": "swagger", | ||||
|       "environmentVariables": { | ||||
|         "ASPNETCORE_ENVIRONMENT": "Development" | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										12
									
								
								backend/WeatherForecast.cs
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								backend/WeatherForecast.cs
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| namespace backend; | ||||
| 
 | ||||
| public class WeatherForecast | ||||
| { | ||||
|     public DateOnly Date { get; set; } | ||||
| 
 | ||||
|     public int TemperatureC { get; set; } | ||||
| 
 | ||||
|     public int TemperatureF => 32 + (int)(TemperatureC / 0.5556); | ||||
| 
 | ||||
|     public string? Summary { get; set; } | ||||
| } | ||||
							
								
								
									
										8
									
								
								backend/appsettings.Development.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								backend/appsettings.Development.json
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| { | ||||
|   "Logging": { | ||||
|     "LogLevel": { | ||||
|       "Default": "Information", | ||||
|       "Microsoft.AspNetCore": "Warning" | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										9
									
								
								backend/appsettings.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								backend/appsettings.json
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | |||
| { | ||||
|   "Logging": { | ||||
|     "LogLevel": { | ||||
|       "Default": "Information", | ||||
|       "Microsoft.AspNetCore": "Warning" | ||||
|     } | ||||
|   }, | ||||
|   "AllowedHosts": "*" | ||||
| } | ||||
|  | @ -1,10 +1,14 @@ | |||
| <Project Sdk="Microsoft.NET.Sdk"> | ||||
| <Project Sdk="Microsoft.NET.Sdk.Web"> | ||||
| 
 | ||||
|   <PropertyGroup> | ||||
|     <OutputType>Exe</OutputType> | ||||
|     <TargetFramework>net7.0</TargetFramework> | ||||
|     <ImplicitUsings>enable</ImplicitUsings> | ||||
|     <Nullable>enable</Nullable> | ||||
|     <ImplicitUsings>enable</ImplicitUsings> | ||||
|   </PropertyGroup> | ||||
| 
 | ||||
|   <ItemGroup> | ||||
|     <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="7.0.11" /> | ||||
|     <PackageReference Include="Swashbuckle.AspNetCore" Version="6.5.0" /> | ||||
|   </ItemGroup> | ||||
| 
 | ||||
| </Project> | ||||
|  |  | |||
		Reference in a new issue
	
	 Sindre Kjelsrud
						Sindre Kjelsrud