简体   繁体   English

如何将值从HTML控件传递到ASP.NET服务器?

[英]How to pass values from HTML controls to ASP.NET server?

I like to implement in my page functions which allow user to read and modify data, and save this data to XML file 我喜欢在我的页面函数中实现允许用户读取和修改数据,并将此数据保存到XML文件

I able to read data from xml, display on page, and save data to file, i not able to pass, entered by User data, from html page to function in ASP.NET Controler (SaveConfigurationToFile) 我能够从xml读取数据,在页面上显示,并将数据保存到文件,我无法通过用户数据输入,从html页面传递到ASP.NET控制器中的功能(SaveConfigurationToFile)

HTML part: 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>

''''''''''''' “”“”“”“”“”“””

Controler part: 控制器部分:

'''''''''''' “”“”“”“”“”“”

public ActionResult SaveConfigurationToFile(IFormCollection collection)
        {  
            PortalConfiguration dataToSave = new PortalConfiguration();
            dataToSave.SaveConfigurationData("string","string");
            return View();
        }

I like to have possibility to pass data entered in table to function SaveConfigurationToFile 我希望有可能将表中输入的数据传递给函数SaveConfigurationToFile

I use Your advice and i create model: 我使用你的建议,我创建模型:

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; }
    }

Then based on model i create View : 然后基于模型我创建视图:

 <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>

And then i was able to get data in code behind : 然后我能够在代码中获取数据:

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");
        }

Now working ok 现在工作正常

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM