如何在mvc中显示app.config文件
How to display app.config file in mvc
我见过一些老方法来完成这个,比如 this one。
然而即使这样显示returns:
<%=ConfigurationManager.AppSettings["webpages:Version"].ToString() %>
我想我可能会使用一些在 .Net 世界中已经过时的东西。目标是遍历值并将其打包回 log.html 页面。
首先,CodeProject 上 "tutorials" 的 90% 完全是废话,就像您 link 看到的那样。它的标题 ("Read Configuration Settings of Web.config using Javascript") 本身就是一个谎言,因为从 JavaScript 读取 web.config 是绝对不可能的。
其次,您似乎正在阅读 ASP.NET WebForms 教程。首先寻找 MVC 教程,最好是在 http://www.asp.net.
使用 MVC 这非常简单。您创建一个模型来保存值、一个将处理请求的操作方法和一个显示模型值的视图。
public class ConfigurationValuesViewModel
{
public List<KeyValuePair<string, string>> AppSettingsValues { get; private set; }
public ConfigurationValuesViewModel()
{
AppSettingsValues = new List<KeyValuePair<string, string>>();
}
}
控制器:
public ActionResult GetConfigurationValues()
{
// Fill the ViewModel with all AppSettings Key-Value pairs
var model = new ConfigurationValuesViewModel();
foreach (string key in ConfigurationManager.AppSettings.AllKeys)
{
string value = ConfigurationManager.AppSettings[key];
model.AppSettingsValues.Add(new KeyValuePair<string, string>(key, value);
}
return View(model);
}
和视图:
@model ConfigurationValuesViewModel
@foreach (var setting in Model.AppSettingsValues)
{
@setting.Key - @setting.Value
}
我见过一些老方法来完成这个,比如 this one。
然而即使这样显示returns:
<%=ConfigurationManager.AppSettings["webpages:Version"].ToString() %>
我想我可能会使用一些在 .Net 世界中已经过时的东西。目标是遍历值并将其打包回 log.html 页面。
首先,CodeProject 上 "tutorials" 的 90% 完全是废话,就像您 link 看到的那样。它的标题 ("Read Configuration Settings of Web.config using Javascript") 本身就是一个谎言,因为从 JavaScript 读取 web.config 是绝对不可能的。
其次,您似乎正在阅读 ASP.NET WebForms 教程。首先寻找 MVC 教程,最好是在 http://www.asp.net.
使用 MVC 这非常简单。您创建一个模型来保存值、一个将处理请求的操作方法和一个显示模型值的视图。
public class ConfigurationValuesViewModel
{
public List<KeyValuePair<string, string>> AppSettingsValues { get; private set; }
public ConfigurationValuesViewModel()
{
AppSettingsValues = new List<KeyValuePair<string, string>>();
}
}
控制器:
public ActionResult GetConfigurationValues()
{
// Fill the ViewModel with all AppSettings Key-Value pairs
var model = new ConfigurationValuesViewModel();
foreach (string key in ConfigurationManager.AppSettings.AllKeys)
{
string value = ConfigurationManager.AppSettings[key];
model.AppSettingsValues.Add(new KeyValuePair<string, string>(key, value);
}
return View(model);
}
和视图:
@model ConfigurationValuesViewModel
@foreach (var setting in Model.AppSettingsValues)
{
@setting.Key - @setting.Value
}