【问题标题】:How to handle C# .NET GET / POST?如何处理 C# .NET GET / POST?
【发布时间】:2011-06-10 13:13:45
【问题描述】:

由于我是从 PHP 转来的 .NET 新手,所以我选择了 C# 来使用它,而且它的表现很好。 我有一个关于 GET 和 POST 处理的问题。

到目前为止,我已经确定可以将其放入 aspx 页面后面的代码文件中:

if (Request.HttpMethod.ToString() == "POST") {

    Response.Write("You sent a post!")

}

我可以和一个 ELSE 在那里处理一个 GET,但你会怎么做呢?

在 PHP 中我会这样做:

示例网址 = http://www.example.com/page.php?foo=bar

$foobar = $_GET['foo'];

请好心人给我指点如何在 C# 中处理这个问题。

谢谢

【问题讨论】:

  • 我建议使用 MVC3,您可以专门标记您的控制器操作,无论您希望它们是获取、发布还是任何操作。
  • 为什么不使用 ASP.NET MVC 而不是 Webforms? ASP.NET MVC 不会尝试抽象出 Web 的本质。
  • 您是在问如何访问作为 POST 或 GET 的一部分发送的参数?
  • 这是我继承的半成品项目,因为根据高级开发人员的说法,这将是一个“良好的起点”。它是经典 ASP 和 .NET 的混合体。可悲的是,PHP 每次都被其他开发人员投票否决,这是一种耻辱。阅读 MVC 方法,我可能会将其用于临时项目。

标签: c# .net post get


【解决方案1】:

$_GET[] 的 .Net 版本是:

 Request.QueryString["parameter1"]

你不需要做这个 IF 条件。

$_POST[] 的 .Net 版本是:

 Request.Form["paramName"];

仍然不需要 IF 条件。

但是在 Asp.Net webform 中,您不需要一直使用 Request 类,因为返回到页面的 PostBack 会将您的表单数据直接包含到控件值中。假设您有一个名为 txt1 的文本框,当用户提交表单时,您可以通过访问 txt1 直接获取该文本框的值。

【讨论】:

  • 谢谢,这对我帮助很大。
  • Request.Querystring("parameter1") 给了我一个错误,我不得不使用 Request.Querystring["parameter1"]
  • 请求["paramName"];不是发布数据,请使用 Request.Form["foo"] 获取 POST 数据。请求只返回所有请求数据,get、post、cookie、head等
【解决方案2】:

基本上就是:

var request = Request["q"];         // $_REQUEST
var post = Request.Form["q"];       // $_POST
var get = Request.QueryString["q"]; // $_GET

【讨论】:

    【解决方案3】:

    试试

        string foobar = Request.QueryString["foo"];
    

    【讨论】:

      【解决方案4】:

      如果您要获取 Foo 的查询字符串值,请使用:

      Request.QueryString["foo"];
      

      您可以使用请求对象来获取发布到您的页面的值。

      【讨论】:

        【解决方案5】:

        如果您的目标是无论使用何种方法(get 与 post)都能够访问传入的参数,那么您可以使用 Request.Params["paramname"] 来访问它们,而您不需要需要担心是get还是post。

        【讨论】:

          【解决方案6】:

          如果我不太理解这个问题,请原谅我,但我相信您要求的是 QueryString 属性?

          http://msdn.microsoft.com/en-us/library/system.web.httprequest.querystring.aspx

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2010-10-02
            • 2013-06-18
            • 1970-01-01
            • 1970-01-01
            • 2021-12-20
            • 2015-03-07
            • 1970-01-01
            相关资源
            最近更新 更多