0

我需要将数据从视图传递到 mvc 项目中的控制器。

我已经看到了许多使用 Form 传递给控制器​​并具有提交按钮的示例。

实际上,我必须@foreach在 razor 视图中像网格一样填充数据。第一个字段是 a id,它是指向相应编辑页面的链接,用于编辑与该 id 对应的字段。我需要点击id才能在控制器中使用它来显示相应的编辑页面。这里不需要submit按钮。

我也不想显示idin querystring,因为 id 应该是安全的。

我怎样才能做到这一点 ?请帮忙

谢谢,

4

3 回答 3

2

在 MVC 中无需提交即可将数据获取到控制器的最佳方法是使用JQuery ajax发送请求并在 JavaScript 中处理响应。您可以使用 POST 请求,以便数据不在查询字符串中,但这不会使其更加安全。保护 HTTP 请求中数据的唯一方法是使用 HTTPS/SSL。

于 2012-11-16T14:04:57.037 回答
0

我不确定您是否可以在不将 Id 传递到编辑页面来编辑该特定数据的情况下逃脱。您可以将其发送到会话或缓存对象。这就是我能想到的。我认为使用 ID 并没有真正冒安全风险,但话又说回来,在我完成任何类型的编辑页面的任何地方,我总是通过 Id 并且从来没有遇到过问题。

于 2012-11-16T20:33:24.677 回答
0

您需要像这样在 globle.asax 文件中创建自定义路由

routes.MapRoute(
                "Check", // Route nameRegister
                "Artical", // URL with parameters
                new { controller = "Artical", action = "Index", id = UrlParameter.Optional }  
            );

我想这会帮助你...

于 2012-11-16T14:02:47.527 回答