c# - 如何将值从 HTML 控件传递到 ASP.NET 服务器?
问题描述
我喜欢在我的页面中实现允许用户读取和修改数据并将这些数据保存到 XML 文件的功能
我能够从 xml 读取数据,在页面上显示,并将数据保存到文件,但我无法将用户数据输入的数据从 html 页面传递到 ASP.NET 控制器(SaveConfigurationToFile)中的功能
HTML部分:
<html>
<table class="table" style="text-align: left; width: 198px; height: 60px;"
border="1" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td><text name="Day">Poniedziałek</text></td>
<td><text name="Day">Wtorek</text></td>
<td><text name="Day">Środa</text></td>
<td><text name="Day">Czwartek</text></td>
<td><text name="Day">Piątek</text></td>
<td><text name="Day">Sobota</text></td>
<td><text name="Day">Niedziela</text></td>
</tr>
<tr>
<td><input id="MondayStart" type="time" class="form-control" name="Start" value="@ViewBag.MondayStart"></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td><input id="MondayEnd" type="time" class="form-control" name="End" value="@ViewBag.MondayEnd"></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<button type="submit" value="Zapisz" class="btn btn-default"> @Html.ActionLink("Zapisz", "SaveConfigurationToFile")</button>
<br>
</html>
'''''''''''''
控制器部分:
''''''''''''
public ActionResult SaveConfigurationToFile(IFormCollection collection)
{
PortalConfiguration dataToSave = new PortalConfiguration();
dataToSave.SaveConfigurationData("string","string");
return View();
}
我希望有可能将表中输入的数据传递给函数 SaveConfigurationToFile
解决方案
我使用您的建议并创建模型:
public class ConfigurationData
{
//Model for configuration page to be saved in xml
[Key]
public string MondayStart { get; set; }
public string MondayEnd { get; set; }
public string TuesdayStart { get; set; }
public string TuesdayEnd { get; set; }
public string WednesdayStart { get; set; }
public string WednesdayEnd { get; set; }
public string ThursdayStart { get; set; }
public string ThursdayEnd { get; set; }
public string FridayStart { get; set; }
public string FridayEnd { get; set; }
public string SaturdayStart { get; set; }
public string SaturdayEnd { get; set; }
public string SundayStart { get; set; }
public string SundayEnd { get; set; }
public string email { get; set; }
public string phone { get; set; }
}
然后基于模型我创建视图:
<form asp-controller="Home" asp-action="SaveConfigurationToFile">
<table class="table" style="text-align: left; width: 198px; height: 60px; margin-left:10px"
border="1" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td><text name="Day">Poniedziałek</text></td>
<td><text name="Day">Wtorek</text></td>
<td><text name="Day">Środa</text></td>
<td><text name="Day">Czwartek</text></td>
<td><text name="Day">Piątek</text></td>
<td><text name="Day">Sobota</text></td>
<td><text name="Day">Niedziela</text></td>
</tr>
<tr>
<td>
<div class="form-group" >
<input asp-for="MondayStart" class="form-control" type="time" value="@ViewBag.MondayStart" />
<span asp-validation-for="MondayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="ThursdayStart" class="form-control" type="time" value="@ViewBag.ThursdayStart" />
<span asp-validation-for="TuesdayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="WednesdayStart" class="form-control" type="time" value="@ViewBag.WednesdayStart"/>
<span asp-validation-for="WednesdayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="TuesdayStart" class="form-control" type="time" value="@ViewBag.TuesdayStart" />
<span asp-validation-for="ThursdayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="FridayStart" class="form-control" type="time" value="@ViewBag.FridayStart" />
<span asp-validation-for="FridayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="SundayStart" class="form-control" type="time" value="@ViewBag.SundayStart"/>
<span asp-validation-for="SundayStart" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="SundayStart" class="form-control" type="time" value="@ViewBag.SundayStart" />
<span asp-validation-for="SundayStart" class="text-danger"></span>
</div>
</td>
</tr>
<tr>
<td>
<div class="form-group">
<input asp-for="MondayEnd" class="form-control" type="time" value="@ViewBag.MondayEnd"/>
<span asp-validation-for="MondayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="TuesdayEnd" class="form-control" type="time" value="@ViewBag.TuesdayEnd"/>
<span asp-validation-for="TuesdayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="WednesdayEnd" class="form-control" type="time" value="@ViewBag.WednesdayEnd" />
<span asp-validation-for="WednesdayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="ThursdayEnd" class="form-control" type="time" value="@ViewBag.ThursdayEnd"/>
<span asp-validation-for="ThursdayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="FridayEnd" class="form-control" type="time" value="@ViewBag.FridayEnd"/>
<span asp-validation-for="FridayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="SaturdayEnd" class="form-control" type="time" value="@ViewBag.SaturdayEnd"/>
<span asp-validation-for="SundayEnd" class="text-danger"></span>
</div>
</td>
<td>
<div class="form-group">
<input asp-for="SundayEnd" class="form-control" type="time" value="@ViewBag.SundayEnd" />
<span asp-validation-for="SundayEnd" class="text-danger"></span>
</div>
</td>
</tr>
</tbody>
</table>
<div class="form-group">
<input asp-for="email" class="form-control" type="email" value="@ViewBag.email" />
<span asp-validation-for="email" class="text-danger"></span>
</div>
<div class="form-group">
<input asp-for="phone" class="form-control" type="tel" value="@ViewBag.phone" />
<span asp-validation-for="phone" class="text-danger"></span>
</div>
<button type="submit" value="Zapisz" class="btn btn-default"> Zapisz zmiany</button>
</form>
然后我能够在后面的代码中获取数据:
public ActionResult SaveConfigurationToFile(ConfigurationData model)
{
PortalConfiguration dataToSave = new PortalConfiguration();
dataToSave.SaveConfigurationData(model.MondayStart, model.MondayEnd,model.ThursdayStart,model.TuesdayEnd, model.WednesdayStart,model.WednesdayEnd,
model.ThursdayStart,model.ThursdayEnd,model.FridayStart, model.FridayEnd, model.SaturdayStart, model.SaturdayEnd, model.SundayStart,model.SundayEnd,
model.email, model.phone);
return Redirect("../Home/Configuration");
}
现在工作正常
推荐阅读
- parsing - awk 中的字段分隔符
- javascript - 执行两个没有 .then() 的函数
- c - 如何使用 mpi_read_binary() 函数?
- java - apache poi 问题 - 从 6.5.2 升级 AEM 6.5.5
- javascript - 未捕获的 DOMException:Document.querySelector:'.3-1' 不是有效的选择器
- java - 为什么 Java 并行文件写入不起作用?
- spring-boot - 规范参数解析器 - URL 运算符
- queue - Weblogic 和 Websphere JMS 队列通信
- swift - SwiftUI - 内容从一瞬间出现然后一起消失
- c - 顶点对象不显示(旧版 OpenGL 1.2)