0
この関数はコードビハインドページで完全に機能しますが、この関数にグローバルにアクセスする必要があります。そのため、app_codeフォルダに移動します。今、私の新しいapp_codeファイル関数がそれを見いだす方法で自分のラベルIDを宣言する方法が少し失われています。App_Code関数の問題:ラベルIDが見つからない/ App_Code関数で宣言されていませんか?
私のエラーメッセージ=エラー 'Label1'は宣言されていません。保護レベルのためにアクセスできない場合があります。 注:私はのthnx
名前空間BranchHours パブリック・クラスbranchHoursのコメントに回答
' Public Shared Property Label1 As Object
Public Shared Function MyFunc(ByVal branchCode As String) As String
Dim URLString As String = "url/branchesTesting.xml"
Dim xmlDoc As XDocument = XDocument.Load(URLString)
' Dim root As XmlNode = xmlDoc.DocumentElement
' Dim hoursList As XmlNodeList = root.SelectNodes("/BranchesInfo/BranchInfo[BranchId='db']/BranchHours/Hours")
Dim x As Integer = 0 'looping variable
Dim branchid = xmlDoc.XPathSelectElements("/BranchesInfo/BranchInfo[BranchId='" & branchCode & "']/BranchHours/Hours")
Dim branchname = xmlDoc.XPathSelectElements("/BranchesInfo/BranchInfo[BranchId='" & branchCode & "'/Name]/BranchHours/Hours")
Dim Items = From BranchHours In xmlDoc.XPathSelectElements("/BranchesInfo/BranchInfo[BranchId='" & branchCode & "']/BranchHours/Hours") _
Select DayOfWeek = BranchHours.Element("DayOfWeek").Value, Open = BranchHours.Element("Open").Value, _
Close = BranchHours.Element("Close").Value
Label1.Text = ""
For Each Hours In Items
' If x = 0 Then
' Label1.Text = Label1.Text & "<div>DayOfWeek:" & Hours.DayOfWeek & "</div>" + vbLf
Label1.Text = Label1.Text & "<div>DayOfWeek:" & Hours.DayOfWeek & "</div>" + vbLf
Label1.Text = Label1.Text & "Open: " & Hours.Open + vbLf
Label1.Text = Label1.Text & "Close: " & Hours.Close + vbLf
' Else
' x = x + 1
' End If
Next
If Label1.Text = "" Then
Label1.Text = "No Results."
End If
Return Label1.Text
End Function
End Class
エンド名前空間
Public Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Call BranchHours.branchHours.MyFunc("dr")
Label1.Text = BranchHours.branchHours.MyFunc("dr")
End Sub
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Default3bh.aspx.vb" Inherits="Default3bh" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<asp:Label ID="Label1" runat="server" For="label1"></asp:Label>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="AdditionalContent" Runat="Server">
</asp:Content>
メソッドでLabel1を使用する代わりに、文字列変数を作成してメソッドから返す必要があります –