【问题标题】:How to include external HTML in my .aspx page from a JSP+JSTL equivalent如何在我的 .aspx 页面中包含来自 JSP+JSTL 等效项的外部 HTML
【发布时间】:2023-03-02 22:08:02
【问题描述】:

我在 JSP+JSTL (Java) 中有这段代码,可以在页面中插入一些 HTML:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<c:set var="caasPath" value="http://wwww.MyExampleSite.com/header/default"/>
<c:import url="${caasPath}/header?contentType=html"/>

我需要在 ASP.NET Web 窗体(.aspx 文件)中执行相同的操作。我尝试过使用 .ascx,但我不知道如何在不使用 iframe 的情况下直接在页面中插入 html。

这是一个来自 MSDN 的示例,关于如何转换 Java 代码和使用 Web 表单控件http://msdn.microsoft.com/en-us/library/aa478990.aspx

与此代码等效的 Asp.Net (.aspx) 是什么?

我尝试过类似的方法,但它不起作用 (http://msdn.microsoft.com/en-us/library/sbz9etab%28v=vs.85%29.aspx)

<%@ Register Src="http://wwww.MyExampleSite.com/header/default/header?contentType=html" TagName="header"  Tagprefix="cta" %>
<cta:header ID="headerSection" runat="server"/>

非常感谢。

【问题讨论】:

    标签: html asp.net .net


    【解决方案1】:

    据我所知,您没有一个不错的 1-liner。但是您可以创建一个发出 Web 请求的方法(我们称之为“dotnetImport”)并像这样调用它:

    <%= dotnetImport("http://wwww.ExampleSite.com/header/default/header?contentType=html"); %>
    

    dotnetImport 的定义位置:

    public string dotnetImport(string address) {
      WebRequest request = WebRequest.Create (address);
      request.Credentials = CredentialCache.DefaultCredentials;
      HttpWebResponse response = (HttpWebResponse)request.GetResponse ();
      Stream dataStream = response.GetResponseStream ();
      StreamReader reader = new StreamReader (dataStream);
      string responseFromServer = reader.ReadToEnd ();
      // dispose the above... use best practices to avoid memory leaks.
      return responseFromServer;
    }
    

    免责声明,我没有对此进行测试,它只是作为一个起点,而不是一个现成的粘贴解决方案。

    享受

    【讨论】:

    • 感谢@Mikey 的精彩回答。但是,有没有其他方法可以直接将它包含在 HTML 中而不使用代码或 java 脚本?
    • 您希望服务器或客户端请求附加内容吗?您可以使用 javascript/jquery 让客户端发出请求。如果您希望服务器发出请求并将结果包含在发送给客户端的页面中,那么您必须使用某种服务器端代码。您可以使用代码隐藏(例如 aspx 或通过可重复使用的用户控件 .ascx)来执行此操作,或者如果您想避免代码隐藏,您可以通过在 HTML 中使用内联服务器标签发出请求来实现。 weblogs.asp.net/ahmedmoosa/archive/2010/10/06/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    • 2011-08-04
    相关资源
    最近更新 更多