Как получить доступ к конфигурации в configureServices - PullRequest
0 голосов
/ 12 июня 2018

Как получить доступ к конфигурации из метода configureServices в Giraffe-FSharp?

Вот сокращенный раздел из настройки Giraffe, созданной шаблоном SAFE через dotnet new SAFE -lang F# --server giraffe:

let configureServices (services : IServiceCollection) =
    services.AddCors()                  |> ignore
    services.AddGiraffe()               |> ignore
    // Want to access configuration here.



[<EntryPoint>]
let main _ =
    let contentRoot = Directory.GetCurrentDirectory()
    let webRoot     = Path.Combine(contentRoot, "WebRoot")

    WebHostBuilder()
        .UseKestrel()
        .UseContentRoot(contentRoot)
        .UseIISIntegration()
        .UseWebRoot(webRoot)
        .Configure(Action<IApplicationBuilder> configureApp)
        .ConfigureAppConfiguration(Action<WebHostBuilderContext, IConfigurationBuilder> configureAppConfig)
        .ConfigureServices(configureServices)
        .ConfigureLogging(configureLogging)
        .Build()
        .Run()
    0

1 Ответ

0 голосов
/ 16 июня 2018

Получите поставщика услуг из набора служб, затем используйте его для получения конфигурации:

let serviceProvider = services.BuildServiceProvider()
let config = serviceProvider.GetService<IConfiguration>()
...