C # No se puede leer desde el file App.config en MVC

Tengo un proyecto de MVC y estoy tratando de almacenar mis keys de API en un file de configuration separado que ignoro al pasar el código a Git. De acuerdo con MSDN, debería ser capaz de almacenarlos en un App.config como si fuera

<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="APIKey" value="APIKeyValue" /> </appSettings> </configuration> 

Debería poder leer el file creando un método en un model

  public class KeyTest { public string KeyTestCall() { string testkey = ConfigurationManager.AppSettings.Get("APIKey"); return testkey; } } 

y luego invocar el método en mi controller para asignar el valor de mi file App.config (para que sepa que obtengo el valor).

 public void Testing() { KeyTest k = new KeyTest(); ViewBag.x = k; } 

En ningún momento se romperá el código para un punto de interrupción, la construcción tendrá éxito y no puedo decir si obtengo el valor o no. Cualquier ayuda es muy apreciada. ¡Gracias!

Además de lo anterior (re: web.config vs app.config ) si desea eliminar "secretos" del control de código fuente, esta es una forma de hacerlo :

En web.config

 <?xml version="1.0" encoding="utf-8"?> <cofiguration> .... <appSettings file="AppKeys.config"> <add key="SomeOtherSettingThatHasNoSecrets" value="foo" /> ... 

Luego, en un file de AppKeys.config (puede nombrar this whatever.config, sample como se menciona en el ejemplo anterior), que no agrega al control de Git / source:

 <appSettings> <add key="SomeSecretKey" value="the secret" /> ... 

Tenga en count que AppKeys.config no tiene una statement XML.

Hth.

Para una aplicación web como una aplicación MVC, es un file Web.config , no un App.config