Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.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# 如何在MVC中捕获aspx页面中的id_C#_Asp.net Mvc - Fatal编程技术网

C# 如何在MVC中捕获aspx页面中的id

C# 如何在MVC中捕获aspx页面中的id,c#,asp.net-mvc,C#,Asp.net Mvc,我在做一个MVC制作项目 在我的Production details视图中,我有一些按钮可以从数据库中获取更多数据,但为此,我需要产品的id。我能看到它的存在,但我能抓住它吗 这是我返回数据的控制器: public ActionResult Details(long AProductionOrderId) { ProductionOrderList item = new ProductionOrderList(); item = ProductionO

我在做一个MVC制作项目

在我的Production details视图中,我有一些按钮可以从数据库中获取更多数据,但为此,我需要产品的id。我能看到它的存在,但我能抓住它吗

这是我返回数据的控制器:

 public ActionResult Details(long AProductionOrderId)
    {

        ProductionOrderList item = new ProductionOrderList();
        item = ProductionOrderReg.GetProductionOrders(conn, AProductionOrderId);
        ViewData["item"] = item;
        return View();
    }
这是我的详细信息页面,当它加载时,我可以看到id,但是如何在左边的按钮中捕捉并使用它来带来更多的日期


您可以在查看页面上使用隐藏输入来提交ID

你的看法:

<form method="post">
    <button type="submit">Button Text</button>
    <input type="hidden" name="AProductionOrderId" value="@ViewData['item']">
</form>

按钮文本

我写了这个im我的控制器

ViewData["id"] = AProductionOrderId;
并在我的视野中抓住了它

 long id = Convert.ToInt64( ViewData["id"]);
如果您的控制器是:

public ActionResult Details(long AProductionOrderId)
{
    var item = ProductionOrderReg.GetProductionOrders(conn, AProductionOrderId);
    ViewBag.ProductionOrderId = AProductionOrderId;
    return View(item);
}
然后,您的AProductionOrderId将出现在ViewBag中,尽管我看不出您需要它的原因,因为无论项目的类型是什么(单个对象实例或对象列表),它都包含您的ID作为属性,因为您是通过此ID获取项目的。无论如何,在您的模型中,您需要像这样声明您的模型:

 @model YourModelNamespace.ProductionOrderList
 @{
    long AProductionOrderId = Viewbag.AProductionOrderId;
 }
现在,您可以在视图中访问模型的任何属性。但如果您确实需要,可以通过ViewBag访问它,如下所示:

 @model YourModelNamespace.ProductionOrderList
 @{
    long AProductionOrderId = Viewbag.AProductionOrderId;
 }

请努力用正确的英语书写-你至少可以修正排版你有哪些排版路线?只需将id放入ViewData并让按钮使用它。你为什么不将模型传递给你的view???我的意思是,你要在你的控制器中得到这个项目,它必须有ID属性,所以返回视图(项目);然后在视图上定义模型,您就有了所需的吗?为什么要使用ViewData???