Nome do provedor ausente ao depurar a AzureFunction e implantar a função azul

Tenho um problema ao obter umDbContext puxar corretamente minha string de conexão do meulocal.settings.json

Contexto:

Este é um projeto de função do AzureO principal código do problema está emSystem.Data.Entity.Internal.AppConfigEmbora eu tenha umlocal.settings.json arquivo este não é o núcleo dotnet. É .net 4.6.1

Mensagem de erro:

'A cadeia de conexão' ShipBob_DevEntities 'no arquivo de configuração do aplicativo não contém o atributo providerName obrigatório. "'

Configuração Json:

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "",
    "AzureWebJobsDashboard": ""
},

"ConnectionStrings": {
"ShipBob_DevEntities": {
  "ConnectionString": "metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string='data source=***;initial catalog=***;persist security info=True;User Id=***;Password=***;;multipleactiveresultsets=True;application name=EntityFramework'",
  "providerName": "System.Data.EntityClient"
    }
  }
}  

Versões de configuração testadas:

Movendo o nome do provedor para o realConnectionString valor do token: o mesmo erro ocorreConfigurando oprovider atributo dentro doConnectionString atribuir aEntityClient: isso não fez nada

FazerShipBob_DevEntities um valor de sequência = para o valor deConnectionString : isso gera novos erros, como os que são

metadados de palavras-chave não são suportados

Tentei usar uma string de conexão ADO que lança umcode first exceção que parece ocorrer quando a cadeia de conexão está incorreta em umdatabase first aproximação.

Tomei a liberdade de descompilarEntityFramework.dll usandodotPeek e rastrearam o problema atéSystem.Data.Entity.Internal.LazyInternalConnection.TryInitializeFromAppConfig. Dentro deste método, há uma chamada paraLazyInternalConnection.FindConnectionInConfig que cospe umConnectionStringSettings objeto que tem éProviderName valor definido como nulo. Infelizmente, não consigo depurar oAppConfig.cs classe que parece usar para gerar esse valor, por isso estou preso.

Até agora, consultei esses dois artigos. Um dos quais afirma colocar o nome do provedor como seu próprio token; no entanto, isso não está funcionando.

https://github.com/Azure/azure-functions-cli/issues/193
https://github.com/Azure/azure-functions-cli/issues/46

Alguém sabe o formato correto a ser usado em local.settings.json para uma conexão do Entity Framework?

questionAnswers(3)

yourAnswerToTheQuestion