programing

aspx 페이지 뒤에 있는 코드의 변수를 호출하는 방법

batch 2023. 7. 30. 17:31
반응형

aspx 페이지 뒤에 있는 코드의 변수를 호출하는 방법

나는 이것을 본 적이 있다는 것을 알지만 그것을 하는 올바른 방법을 수 없습니다...기본적으로 저는 .cs 파일에 "string clients"라는 문자열 변수를 가지고 있습니다.하지만 나는 그것을 내 aspx 페이지에 전달할 수 없었습니다.

<%=clients%>  

저를 고쳐주세요, 저는 이것을 어떻게 하는지 기억이 나지 않거나 확실하지 않습니다.(c#에 새로 추가됨) 그리고 내가 그것을 검색했을 때.그것은 명확하지 않았습니다.아니면 밖에 이런 것들이 많지 않습니다.로 검색된.

"asp.net c#<%= %>일관성 없는 결과..아마도 내가 이것들을 어떻게 부르는지 모르기 때문일 것입니다.

필드를 선언해야 합니다.publicASPX 마크업에서 적절한 가시성을 제공합니다.어떤 경우에도 속성을 선언할 수 있습니다.


private string clients;
public string Clients { get { return clients; } }

업데이트: 다음과 같이 선언할 수도 있습니다.protected아래 댓글에 명시된 바와 같이.

그런 다음 ASPX 측에서 호출합니다.

<%=임시 %>

서버 태그 속성에 배치하면 이 기능이 작동하지 않습니다.예:

<asp:Label runat="server" Text="<%="Matrix%" />

이것은 유효하지 않습니다.다음 항목:

<div><%=%prefix%></div>

파일 뒤에 있는 코드에 공용 변수가 있습니다.

public partial class _Default : System.Web.UI.Page
{
    public string clients;

    protected void Page_Load(object sender, EventArgs e)
    {
        // your code that at one points sets the variable
        this.clients = "abc";
    }
}

이제 디자인 코드에서 다음과 같은 것에 할당합니다.

<div>
    <p><%= clients %></p>
</div>

심지어 자바스크립트 변수.

<script type="text/javascript">

    var clients = '<%= clients %>';

</script>

위해서

<%=clients%>

작업하려면 공개 변수 또는 보호 변수가 있어야 합니다.clients비밀리에

를 설명하는 기사가 있습니다. http://msdn.microsoft.com/en-us/library/6c3yckfw.aspx

ASPX 페이지를 탐색하기 전에 *.cs 파일을 컴파일했는지 확인합니다.

먼저 변수의 액세스 수준이 보호되거나 공용인지 확인해야 합니다.변수 또는 속성이 비공개인 경우 페이지에서 액세스할 수 없습니다.

코드비하

protected String Clients { get; set; }

아스펙스

<span><%=Clients %> </span>

클라이언트 변수를 공개로 선언해야 합니다.

public string clients;

하지만 당신은 아마도 그것을 속성으로 해야 할 것입니다. 예를 들어.

private string clients;
public string Clients{ get{ return clients; } set {clients = value;} }

그런 다음 .aspx 페이지에서 다음과 같이 호출할 수 있습니다.

<%=Clients%>

C#의 변수는 기본적으로 비공개입니다.MSDN의 C#에 있는 액세스 한정자와 MSDN의 C#에 있는 속성에 대한 자세한 내용 읽기

데이터 바인딩 식을 사용하여 공용/보호된 속성에 액세스할 수 있습니다.<%# myproperty %>아래와 같이:

    <asp:Label ID="Label1" runat="server" Text="<%#CodeBehindVarPublic %>"></asp:Label>

DataBind 메서드를 호출해야 합니다. 그렇지 않으면 평가할 수 없습니다.

    public partial class WebForm1 : System.Web.UI.Page
    {
     public string CodeBehindVarPublic { get; set; }
      protected void Page_Load(object sender, EventArgs e)
        {
          CodeBehindVarPublic ="xyz";
       //you should call the next line  in case of using <%#CodeBehindVarPublic %>

          DataBind();
        }

}

다음과 같은 변수에 액세스할 수 있는 속성을 만듭니다.

protected string Test
{
    get; set;
}

그리고 마크업에서:

<%= this.Test %>

HelloFromCsharp.aspx이 모양

 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="HelloFromCsharp.aspx.cs" Inherits="Test.HelloFromCsharp" %>

<!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 id="form1" runat="server">
    <p>
       <%= clients%>
    </p>
    </form>
</body>
</html>

리고그.HelloFromCsharp.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Test
{
    public partial class HelloFromCsharp : System.Web.UI.Page
    {
        public string clients;
        protected void Page_Load(object sender, EventArgs e)
        {
            clients = "Hello From C#";
        }
    }
}

언급URL : https://stackoverflow.com/questions/7406961/how-to-call-a-variable-in-code-behind-to-aspx-page

반응형