代码之家  ›  专栏  ›  技术社区  ›  JayTee

是否有推荐的asp.net 2.0方法通过xhr向客户端提供html片段?

  •  1
  • JayTee  · 技术社区  · 15 年前

    这是我想要的流程:

    1. 静态网页(HTML)使用对ASP.NET页的XHR调用
    2. .NET页使用Web服务从远程服务器检索信息
    3. .NET页返回一个插入到静态HTML页中的HTML“片段”

    我对如何处理.net(2.0)页面上的html代码片段生成感到很困惑。我在一个普通的页面上考虑过类似的事情。

    public void ProcessRequest (HttpContext context)
    {
      context.Response.Write("<ul>");
      //assume "people" is a list of data coming from the external web service
      foreach (string person in people)
      {
        context.Response.Write("<li>" + person + "</li>");
      }
      context.Response.Write("</ul>");
    }
    

    只是看起来很“丑”。有没有人用另一种——而且可能更有效/更优雅的方式来做这件事?任何帮助都将不胜感激。

    1 回复  |  直到 15 年前
        1
  •  1
  •   zihotki    15 年前

    为这个任务返回html有点奇怪,imo。在大多数情况下,我更喜欢以下方式。向public打开您的web服务,或者向它添加一个包装器,然后直接从静态页面的js中使用它。服务应该返回json(首选)或xml数据。在客户端格式(按需以html格式打印)上,使用js在回调中接收数据到xhr,并在任何需要的地方注入。
    但我也想演 YAGNI 在这个任务中-如果它只会被使用几次,并且只在几页内使用,请使用最快的方法来实现它。但是如果你正在构建一些ria应用程序,我建议你检查 ExtJS javascript库。

    编辑26/02:
    如果你不能使用asp.net mvc,但是想使用一些好的框架而不是“response.write”的东西,请检查 OpenRasta . 它是我最喜欢的web框架之一。 It works fine on .Net 2.0 它非常灵活和强大。它还有一个很棒的社区。

    推荐文章