getters와 setter가있는 사용자 정보를 저장하고 XML 파일의 데이터로 채워지는 클래스가 있다고 가정 해 보겠습니다. Java Bean 및 태그 라이브러리를 사용하는 것처럼 클래스의 모든 인스턴스를 반복하는 방법은 무엇입니까?클래스를 반복합니다. beans for asp.net
답변
여기서는 클래스의 모든 인스턴스를 가져 와서 일반 목록에 추가 할 수 있다고 가정합니다. 당신은 당신이 반사를 사용할 수있는 각 속성 이름을 지정하지 않는 경우
List<YourClass> myObjects = SomeMagicMethodThatGetsAllInstancesOfThatClassAndAddsThemtoTheCollection();
foreach (YourClass instance in myObjects)
{
Response.Write(instance.PropertyName.ToString();
}
(PropertyInfo 참조) 그런 식으로 않습니다. 다시 말하지만, 이것이 당신의 의도 였는지 확실하지 않습니다.
aspx 페이지에서이 작동합니까? –
예 Response.Write는 현재 http 출력에만 쓰게됩니다. * aspx 페이지에서 작동합니다. 원하는 경우 정수 목록을 작성하고 위와 같이 페이지로드시 작성하십시오. – kd7
형식이 지정된 HTML을 출력하는 데는 몇 가지 방법이 있습니다. 아마도 반복 할 객체 컬렉션에 액세스하는 코드 숨김에 속성을 만들 것입니다. 그런 다음 .aspx 페이지 자체에서 반복 및 서식을 지정하는 논리를 작성합니다. 예를 들어, .aspx 페이지 :
[snip]
<body>
<form id="form1" runat="server">
<% Somethings.ForEach(s => { %>
<h1><%=s.Name %></h1>
<h2><%=s.Id %></h2>
<% }); %>
</form>
</body>
</html>
그리고 코드 숨김 :
[snip]
public partial class _Default : System.Web.UI.Page
{
protected List<Something> Somethings { get; private set; }
protected void Page_Load(object sender, EventArgs e)
{
Somethings = GetSomethings(); // Or whatever populates the collection
}
[snip]
는 또한 리피터 컨트롤을 사용하여보고 귀하의 컬렉션에 데이터 소스를 설정할 수 있습니다. 위의 코드와 거의 같은 아이디어이지만이 방법이 더 명확하다고 생각합니다 (제 생각에는).
당신이하려는 일에 대해 좀 더 자세히 설명해 주시겠습니까? 개체 컬렉션을 반복하여 데이터를 표시하려고합니까? 어쩌면 내가 찾고있는 솔루션의 유형을 알기 위해 JavaBeans에 익숙하지 않은 것 같습니다 ... –
정확히 시도하고있는 것입니다. 자바에서는 태그 라이브러리를 사용하여 속성을 반복하고 html로 값을 출력 할 수 있습니다. asp.net 함께 할 수있는 비슷한 방법을 찾고 있어요 또는 그것을 잘 알고 있지 않은 더 나은 방법이있는 경우 .net –