Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Documentation: add Hello World and How to add it to Giraffe #245

Merged
merged 7 commits into from
May 18, 2020

Conversation

0x53A
Copy link
Contributor

@0x53A 0x53A commented May 13, 2020

closes #243


// ...

forward "" elmishBridgeHandler
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is forward "" the best way to replicate choose inside a router?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

forward is basically subRoute from Giraffe.

So if you'll do forward "" it basically pushes any request to the next HttpHandler. It can be choose, or it can be anything else.

@0x53A
Copy link
Contributor Author

0x53A commented May 13, 2020

One more thing I might add is a side by side comparison between Saturn and C# MVC Controllers.

If you create a new ASP.NET Core app and choose API

image

it creates a WeatherForecastController:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;

namespace WebApplication1.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]
        public IEnumerable<WeatherForecast> Get()
        {
            var rng = new Random();
            return Enumerable.Range(1, 5).Select(index => new WeatherForecast
            {
                Date = DateTime.Now.AddDays(index),
                TemperatureC = rng.Next(-20, 55),
                Summary = Summaries[rng.Next(Summaries.Length)]
            })
            .ToArray();
        }
    }
}

The plan is to translate that to Saturn.

@Krzysztof-Cieslak Krzysztof-Cieslak marked this pull request as ready for review May 18, 2020 13:25
@Krzysztof-Cieslak Krzysztof-Cieslak merged commit e77c872 into SaturnFramework:master May 18, 2020
@Krzysztof-Cieslak
Copy link
Member

@0x53A, thanks a lot for this PR! ❤️

@0x53A
Copy link
Contributor Author

0x53A commented May 18, 2020

Haha thanks for merging it, I started it and then ... forgot about it again

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Documentation: Getting started and Composition
2 participants