如何通过" id"将数据从视图发送到控制器?

时间:2017-07-25 18:50:12

标签: c# asp.net asp.net-mvc

我把ASP的第一步。 NET和MVC,我不能跳过一个问题。

如何从两个类=" selectpicker"中传输数据?到控制器? 这是我的代码和我的尝试:

型号:

public class AllocatingCodesInMachinesModel
{
    public List<string> machineList { get; set; }
    public List<string> codesCounterList { get; set; }
    public int numbersOfAvaibleCodes { get; set; }
}

控制器:

[HttpGet]
public ActionResult AllocatingCodesInMachines()
{
    int numbersOfAvaibleCodes = //get data from DB;
    var codesCounter = //get data from DB.ToList();
    var machineList = //get data from DB.ToList();


    model.machineList = machineList;
    model.codesCounterList = codesCounter;
    model.numbersOfAvaibleCodes = numbersOfAvaibleCodes;

    return View(model);
}

[HttpPost]
public ActionResult AllocatingCodesInMachines(AllocatingCodesInMachinesModel model)
{
    var option1 = model.codesCounterList;
    var option2 = model.machineList;

    return View();
}

public ActionResult TestAction(string x, string y)
{
    var option1 = x;
    var option2 = y;

    return View("AllocatingCodesInMachines");
}

查看:

@using Swifferr.Models.ViewModels
@model AllocatingCodesInMachinesModel
@{
    ViewBag.Title = "AllocatingCodesInMachines";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Przypisywanie kodów do maszyn</h2>
@using (Html.BeginForm("AllocatingCodesInMachines", "ActualCodes", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    <div class="row">
        <div class="col-sm-12">
            <p><h4>Dostępne kody</h4></p>
            <h5 class="text-center">Liczba kodów dostępnych do przydzielenia: <b>@Model.numbersOfAvaibleCodes</b></h5>
            <p><h4>Przydzielanie kodów</h4></p>
            <div class="col-sm-4">
                <p>Liczba kodów przydzielanych do maszyny </p>
                <select id="numbersOfCodes" class="selectpicker">
                    <option>Wybierz...</option>
                    @foreach (var item in @Model.codesCounterList)
                    {
                        <option value="@item.ToString()">@item.ToString()</option>
                    } 
                    <option value="Wszystkie">Wszystkie</option>
                </select>
            </div>
            <div class="col-sm-4">
                <p>Maszyna: </p>
                <select id="machine" class="selectpicker">
                    <option>Wybierz...</option>
                    @foreach (var item in @Model.machineList)
                    {
                        <option value="@item.ToString()">@item.ToString()</option>
                    } 
                </select>
            </div>
            <br /><br />
            //***1***
            <button type="submit" class="btn btn-info">Dodaj</button>

            //***2***
            <input type="button" class="btn btn-danger" value="Usuń" onclick="location.href='@Url.Action("TestAction", "ActualCodes", new {x = "numbersOfCode", y = "machine"})'" />

        </div>
    </div>
}

我试过了,但不幸的是它没有成功:

1 将模型从视图传递到控制器,但不知道如何组成&#34;侧视图上的模型。

2 我尝试从&#34; selectpicker&#34;中传递所选项目,但不知道如何使用他们的ID传输数据

我知道它的基础。好几天我试着解决这个问题,不幸的是我倒下了。

提前感谢您提供的任何建议提示和修复,以及我的代码中的错误识别。

PS。抱歉我的英文。

0 个答案:

没有答案