Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# HTTP Post通过“提交”按钮将信息从HTML.BeginForm发送到控制器_C#_Asp.net Mvc_View_Controller - Fatal编程技术网

C# HTTP Post通过“提交”按钮将信息从HTML.BeginForm发送到控制器

C# HTTP Post通过“提交”按钮将信息从HTML.BeginForm发送到控制器,c#,asp.net-mvc,view,controller,C#,Asp.net Mvc,View,Controller,我试图通过submit按钮将视图中的信息提交给控制器,但出现404错误。我假设这里必须使用HTTPPost方法,因此我将其包含在标题中,但是,我无法让它将我的信息传递给控制器。我已经传递了ScheduleInfo ActionResult中的字段,使用了HTTPPost并将FormMethod.Post添加到视图中的Html.BeginForm中 这是我正在使用的控制器 public class SchedulerController : Controller { // GET: Sch

我试图通过submit按钮将视图中的信息提交给控制器,但出现404错误。我假设这里必须使用HTTPPost方法,因此我将其包含在标题中,但是,我无法让它将我的信息传递给控制器。我已经传递了ScheduleInfo ActionResult中的字段,使用了HTTPPost并将FormMethod.Post添加到视图中的Html.BeginForm中

这是我正在使用的控制器

public class SchedulerController : Controller
{
    // GET: Scheduler
    [HttpGet]
    public ActionResult SchedulerIndex()
    {
        List<Values> lst = new List<Values>();
        List<Values> lst2 = new List<Values>();
        List<Values> lst3 = new List<Values>();


        foreach (Values.Months month in Enum.GetValues(typeof(Values.Months)))
        {
            lst.Add(new Values { Month = month, IsChecked = false });
        }

        foreach (Values.DaysOfTheWeek day in Enum.GetValues(typeof(Values.DaysOfTheWeek)))
        {
            lst2.Add(new Values { DaysOfWeek = day, IsChecked = false });
        }

        var DaysOfTheMonth = Enumerable.Range(1, 31);

        foreach (var days in DaysOfTheMonth)
        {
            lst3.Add(new Values { DayOfMonth = days, IsChecked = false });
        }


        var val = new Values();
        val.Jobs = new List<SelectListItem>();
        val.Jobs.Add(new SelectListItem() { Text = "Email", Value = "1", Selected = false });
        val.Jobs.Add(new SelectListItem() { Text = "Backup", Value = "2", Selected = false });
        val.Jobs.Add(new SelectListItem() { Text = "Start Application", Value = "3", Selected = false });
        val.Jobs.Add(new SelectListItem() { Text = "Job4", Value = "4", Selected = false });
        val.Jobs.Add(new SelectListItem() { Text = "Job5", Value = "5", Selected = false });


        ViewBag.lst = lst;
        ViewBag.lst2 = lst2;
        ViewBag.lst3 = lst3;

        return View(val);
    }

    [HttpPost]
    public ActionResult ScheduleInfo(string Job, int Second, int Minute, int Hour, int Month, int DaysOfWeek, int DayOfMonth)
    {
        var val = new Values();

        val.Second = Second;
        val.Minute = Minute;
        val.Hour = Hour;
        val.Month = Month;
        val.DaysOfWeek = DaysOfWeek;
        val.DayOfMonth = DayOfMonth;

        return View();
    }
}
公共类调度控制器:控制器
{
//获取:调度程序
[HttpGet]
public ActionResult SchedulerIndex()
{
List lst=新列表();
List lst2=新列表();
List lst3=新列表();
foreach(Enum.GetValues中的Values.Months(typeof(Values.Months)))
{
添加(新值{Month=Month,IsChecked=false});
}
foreach(Enum.GetValues中的Values.DaysOfTheWeek-day(typeof(Values.DaysOfTheWeek)))
{
lst2.Add(新值{DaysOfWeek=day,IsChecked=false});
}
var DaysOfTheMonth=可枚举范围(1,31);
foreach(var天数,以日为单位,以月为单位)
{
lst3.Add(新值{DayOfMonth=days,IsChecked=false});
}
var val=新值();
val.Jobs=新列表();
添加(新建SelectListItem(){Text=“Email”,Value=“1”,Selected=false});
添加(新建SelectListItem(){Text=“Backup”,Value=“2”,Selected=false});
添加(新建SelectListItem(){Text=“启动应用程序”,Value=“3”,Selected=false});
添加(新的SelectListItem(){Text=“Job4”,Value=“4”,Selected=false});
添加(新的SelectListItem(){Text=“Job5”,Value=“5”,Selected=false});
ViewBag.lst=lst;
ViewBag.lst2=lst2;
ViewBag.lst3=lst3;
返回视图(val);
}
[HttpPost]
public ActionResult ScheduleInfo(字符串作业、整数秒、整数分钟、整数小时、整数月、整数天每周、整数天每月)
{
var val=新值();
val.Second=秒;
val.Minute=分钟;
瓦尔小时=小时;
月=月;
val.DaysOfWeek=DaysOfWeek;
val.DayOfMonth=DayOfMonth;
返回视图();
}
}
以下是我正在使用的ViewModel:

public class Values
{
    public enum Months
    {
        Jan = 0,
        Feb = 1,
        Mar = 2,
        Apr = 3,
        May = 4,
        Jun = 5,
        Jul = 6,
        Aug = 7,
        Sep = 8,
        Oct = 9,
        Nov = 10,
        Dec = 11
    }

    public enum DaysOfTheWeek
    {
        Mon = 0,
        Tue = 1,
        Wed = 2,
        Thu = 3,
        Fri = 4,
        Sat = 5,
        Sun = 6
    }

    public int DayOfMonth { get;  set; }

    public object Month { get; set; }

    public object DaysOfWeek { get; set; }

    public bool IsChecked { get; set; }

    public int Second { get; set; }
    public int Minute { get; set; }
    public int Hour { get; set; }

    public int Job { get; set; }
    public List<SelectListItem> Jobs { get; set; }
}
公共类值
{
公众普查月份
{
Jan=0,
2月=1日,
Mar=2,
Apr=3,
五月四日,
6月=5日,
7月=6日,
八月七日,
九月八日,
10月9日,
11月=10日,
12月=11日
}
公共枚举DaysOfTheWeek
{
Mon=0,
星期二=1,
Wed=2,
Thu=3,
Fri=4,
Sat=5,
太阳=6
}
公共整数月日{get;set;}
公共对象月{get;set;}
公共对象DaysOfWeek{get;set;}
已检查公共布尔值{get;set;}
公共整数秒{get;set;}
公共整数分钟{get;set;}
公共整数小时{get;set;}
公共int作业{get;set;}
公共列表作业{get;set;}
}
以下是我从中获取信息的视图:

 @using (Html.BeginForm("schedulerIndex", "Scheduler", FormMethod.Post))
{
    <center>
        <div style="text-align: center">
            <div class="form-group">
                        @Html.DropDownListFor(m => m.Job, Model.Jobs)
            </div>
        </div>
    </center>

    <center>
        <div class="form-group" style="display:inline-block; padding-right:100px">
            <div class=" col-md-2">
                @Html.LabelFor(model => model.Second, "Second")
                @Html.TextBoxFor(model => model.Second)
            </div>
        </div>
        <div class="form-group" style="display:inline-block; padding-right:100px">
            <div class=" col-md-2">
                @Html.LabelFor(model => model.Minute, "Minute")
                @Html.TextBoxFor(model => model.Minute)
            </div>
        </div>
        <div class="form-group" style="display:inline-block; padding-right:100px">
            <div class=" col-md-2">
                @Html.LabelFor(model => model.Hour, "Hour")
                @Html.TextBoxFor(model => model.Hour)
            </div>
        </div>
    </center>
    <br />
    <br />

    <center>
        <div class="col-1">
            <ul class="list-group">
                <li class="list-group-item-heading list-group-item active">
                    <h4 class="list-group-item-text">Select the month(s) the task should be set at</h4>
                </li>

                @foreach (var item in ViewBag.lst)
                {

                    <li class="list-group-item" style="display:inline-block">
                        <div class="checkbox-inline">
                            <input type="checkbox" id="Check_@item.Month" checked="@item.IsChecked" />
                            <label for="Check @item.Month">@item.Month</label>
                        </div>
                    </li>
                }
            </ul>
        </div>
    </center>


    <center>
        <div class="col-2">
            <ul class="list-group">
                <li class="list-group-item-heading list-group-item active">
                    <h4 class="list-group-item-text">Select the day(s) of the week the task should be set at</h4>
                </li>

                @foreach (var item2 in ViewBag.lst2)
                {

                    <li class="list-group-item" style="display:inline-block">
                        <div class="checkbox-inline">
                            <input type="checkbox" id="Check_@item2.DaysOfWeek" checked="@item2.IsChecked" />
                            <label for="Check @item2.DaysOfWeek">@item2.DaysOfWeek</label>
                        </div>
                    </li>
                }
            </ul>
        </div>
    </center>


    <center>
        <div class="col-3">
            <ul class="list-group">
                <li class="list-group-item-heading list-group-item active">
                    <h4 class="list-group-item-text">Select the day(s) of the month the task should be set at</h4>
                </li>

                @foreach (var item3 in ViewBag.lst3)
                {

                    <li class="list-group-item" style="display:inline-block">
                        <div class="checkbox-inline">
                            <input type="checkbox" id="Check_@item3.DayOfMonth" checked="@item3.IsChecked" />
                            <label for="Check @item3.DayOfMonth">@item3.DayOfMonth</label>
                        </div>
                    </li>
                }
            </ul>
        </div>
    </center>

    <input type="submit" value="Submit Data" id="btnSubmit" />

}
@使用(Html.BeginForm(“schedulerIndex”,“Scheduler”,FormMethod.Post))
{
@DropDownListFor(m=>m.Job,Model.Jobs)
@LabelFor(model=>model.Second,“Second”)
@Html.TextBoxFor(model=>model.Second)
@LabelFor(model=>model.Minute,“分钟”)
@Html.TextBoxFor(model=>model.Minute)
@LabelFor(model=>model.Hour,“Hour”)
@Html.TextBoxFor(model=>model.Hour)


  • 选择任务应设置的月份
  • @foreach(ViewBag.lst中的变量项) {
  • @项目.月份
  • }
  • 选择任务应设置为的星期几
  • @foreach(ViewBag.lst2中的变量项2) {
  • @项目2.每周工作日
  • }
  • 选择任务应设置的月份的日期
  • @foreach(ViewBag.lst3中的变量项3) {
  • @项目3.1月的第二天
  • }
}
您应该将操作更新为
ScheduleInfo
而不是
schedulerIndex
,因此
Html.BeginForm

@using (Html.BeginForm("ScheduleInfo", "Scheduler", FormMethod.Post))