Лучший способ сохранить настройки конфигурации в моем приложении asp.net mvc

Я работаю над веб-приложением asp.net mvc, которое выполняет некоторые вызовы API для других веб-приложений. но в настоящее время я храню имя пользователя API, пароль API и URL-адрес API внутри моего кода. Как следует: -

using (var client = new WebClient())
                {
                    //  client.Headers[HttpRequestHeader.Accept] = "AddAsset";
                    var query = HttpUtility.ParseQueryString(string.Empty);
                    foreach (string key in formValues)
                    {
                        query[key] = this.Request.Form[key];
                    }

                    query["username"] = "testuser";
                    query["password"] = "……";
                    query["assetType"] = "Rack";
                    query["operation"] = "AddAsset";
var url = new UriBuilder("http://win-spdev:8400/servlets/AssetServlet");
                    url.Query = query.ToString();
                    try
                    {

Но сохранение этих параметров внутри моего кода не будет гибким, если мне нужно изменить настройки вызова API, и это небезопасно. Итак, как лучше всего сохранить эти настройки. Я думал создать две таблицы базы данных для хранения URL-адреса (и может быть несколько URL-адресов в будущем). И еще одна таблица для хранения имени пользователя и пароля. Итак, создайте таблицы базы данных правильно, чтобы сохранить эти настройки.

Ответы

Ответ 1

Чтобы сохранить эти параметры, вы должны использовать файл Web.Config(API конфигурации). Таким образом, вы сможете обновлять настройки без необходимости перекомпилировать все свое приложение каждый раз. Это самый стандартный способ хранения настроек в приложении Web (MVC или WebForms) и дает возможность шифровать конфиденциальные настройки прозрачно для вашего приложения.

Вы можете получить доступ к сохраненным настройкам с помощью класса WebConfigurationManager. Здесь вы можете найти несколько примеров того, как его использовать.

Пример кода:

Web.config appSettings:

<appSettings>
    <add key="ApiUserName" value="MySampleUsername" />
</appSettings>

Код С#:

string userName = System.Web.Configuration.WebConfigurationManager.AppSettings["ApiUserName"];