Используйте asp include для включения страницы asp.net - PullRequest
0 голосов
/ 20 декабря 2010

У меня есть страница asp, которая использует include для включения определенных страниц в зависимости от строки запроса. Я добавил дополнение к этой странице в asp.net и хочу включить мою новую страницу в страницу asp, но я получаю эту ошибку.

  Active Server Pages error 'ASP 0140'

    Page Command Out Of Order

    /d//Default.aspx, line 1

    The @ command must be the first command within the Active Server Page. 

Ответы [ 4 ]

2 голосов
/ 20 декабря 2010

Вы не можете включать страницы ASP.NET внутри страницы ASP.Однако у вас есть несколько вариантов.

Самый простой вариант - включить страницу ASP.NET в качестве IFrame на страницу ASP.Вы можете использовать ASP для динамической установки URL-адреса IFrame на стороне сервера.

Другой вариант - написать оболочку .NET DLL, которая будет отображать вашу страницу с помощью метода.Затем вы можете зарегистрировать эту DLL в COM +, чтобы она могла вызываться VBScript на ваших страницах ASP.Очевидно, что это сложнее.

Если первый вариант работает, пойти на это.В противном случае вам, возможно, придется выяснить, как реализовать второе.

1 голос
/ 20 декабря 2010

Вы не можете включить страницу ASP.NET в страницу ASP. Вы не можете смешивать их в одном ответе.

Используйте Response.Redirect для перенаправления на страницу ASP.NET.

Обратите внимание, что вы на самом деле не выбираете, какую страницу включить в свою страницу ASP, вы всегда включаете все страниц, поскольку включение выполняется до запуска любого кода ASP , а затем условные операторы только решают, какую из страниц запустить.

1 голос
/ 20 декабря 2010

Я почти уверен, что включаемая функция в ASP предназначена исключительно для включения других ASP-файлов, содержащих код, который должен быть обработан механизмом ASP. Он не знал бы, что делать с кодом ASP .NET.

0 голосов
/ 27 декабря 2010

Я согласен с опциями Джастина Нисснера, но есть и другой простой способ включить содержимое страницы ASP.net в вашу классическую страницу ASP, которая может удовлетворить ваши потребности.

Если вы хотите включить полученный HTML-код страницы ASP.net, вы можете воспользоваться следующим подходом:

Dim Url
Url = "http://pathtoyourasp.net/script/somescript.aspx?param=value"    

' Create XML object, make server side request 
Dim objXML: set objXML = Server.CreateObject("Msxml2.ServerXMLHTTP")
objXML.Open "GET", Url, True
objXML.Send

' Retry a few times just in case: it's classic ASP.
Dim try_times: try_times = 0
While objXML.ReadyState <> 4 and try_times < 5
    objXML.waitForResponse 2
    try_times = try_times + 1
Wend
If objXML.ReadyState = 4 then
    ' Success, write the response
    Response.Write objXML.ResponseText
Else
    ' Failed, show error
    Response.Write "The page failed to load."
End If
Set objXML = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...