Видимо странное поведение страницы ASP.NET ... может быть просто ошибка новичка? - PullRequest
0 голосов
/ 07 ноября 2011

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

В любом случае, в моих попытках понять JSON у меня есть тестовая страница, пытающаяся вывести данные, но по какой-то причине скрипт работает нормально, когда все это на одной странице, но не как код позади.

Мой ASPXФайл:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="json.aspx.vb" Inherits="jsonPage" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form runat="server">
    Output:
        <div id="readOut" runat="server"></div>
    </form>
</body>
</html>

Код:

Imports Jayrock.Json.JsonTextWriter, Jayrock.Json, Jayrock.Json.Conversion, System.Net
Partial Class jsonPage
    Inherits System.Web.UI.Page
    Sub Page_Load(Sender As Object, E As EventArgs)
        Dim cMessage As String = "{""ID"": 8291,  ""Item"": ""Epiphone Les Paul Tribute Plus Outfit"",  ""Main Image"": ""8291-113247"",  ""Colour"": ""Vintage Sunburst"",  ""Option"": ""none"",  ""Price"": 549.0}"
        Dim objResponse As JsonObject = CType(JsonConvert.Import(cMessage), JsonObject)
        readOut.InnerText = "Item name is: " & objResponse("Item")
    End Sub
End Class

Как я уже сказал, это всего лишь тестовый код, чтобы попытаться справиться с JSON, текст «Имя элемента:", сопровождаемый результатом анализа JSON, должен быть помещен в div id =" readOut "на главной странице ASPX, но это не будет ... странно то, что это работает, я вынимаю подпрограмму Page_Load изапустите код в заголовке ASPX-файла.

Я пытался сравнить это с другими файлами, которые у меня работают, и не может найти очевидных причин, почему это происходит.

1 Ответ

1 голос
/ 07 ноября 2011

Я думаю, что это может быть вашей проблемой.Я подозреваю, что вы даже не смогли поразить этот код точкой останова?

Page_Load(Sender As Object, E As EventArgs)

Должно быть предложение дескрипторов.

Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
...