VBappbehind가있는 ASP.Net에 webapp가 있습니다. 그 사람이 페이지에있는 동안 지속하도록 선언 한 List
변수가 필요하지만 현재 컨트롤이 코드에 다시 게시되면 모든 것이 지워집니다. 나는 완전히 ASP.net에 익숙하지 않기 때문에 이것이 가능한지 전혀 모른다. 변수가 Session
일 수 있습니까? 그것들은 기본 유형으로 제한되는 것처럼 보이지만 잘못 될 수 있습니다.VB에서 페이지 변수를 지우지 못하게하는 ASP.Net webapp을 방지하는 방법이 있습니까?
3
A
답변
2
ASP.Net을 사용하면 페이지가로드 될 때마다 코드 비하인드 클래스의 새 인스턴스가 생성되므로 클래스 수준 변수가 재설정됩니다.
가장 좋은 방법은 세션에 보유하려는 목록을 저장하는 것입니다. 일을 더 쉽게 만들려면 세션 변수에서 데이터를 읽는 목록에 대한 getter를 만들 수 있습니다. C#에서는 다음과 같이 보입니다.
private List MyList
{
get { return Session["ListKey"] as List; }
set { Session["ListKey"] = value; }
}
3
ASP.NET ViewState을 살펴보십시오. 당신은 또한 페이지 크기 팽창과 성능 문제를 포함하여 그것을 사용한다면 많은 어려움이 있음을 알아야합니다. C# 코드는 (. SRY 나는 VB 잘 모르겠어요) 다음과 같습니다
List<int> MyList
{
get { return (List<int>) ViewState["mylist"]; }
set { ViewState["mylist"] = value; }
}
참고 :이 변수를 초기화하는 것을 잊지 마십시오.
세션 상태 사용에 대한 참고 사항 : 사용자가 두 개 이상의 창을 동시에 열어두면이 기능이 작동하지 않습니다.
1
0
다음은 사용을 종료 한 코드입니다.
Private Property ChangedControls() As List(Of Control)
Get
Return DirectCast(Session("changedControls"), List(Of Control))
End Get
Set(ByVal value As List(Of Control))
Session("changedControls") = value
End Set
End Property
페이지로드시 새 목록 할당은 정상적으로 작동했습니다.
관련 문제
- 1. Tortoise SVN에 저장된 인증을 방지하는 방법이 있습니까
- 2. stringWithFormat의 반올림을 방지하는 방법이 있습니까?
- 3. 일치하는 URL에서 Google 검색어를 방지하는 방법이 있습니까?
- 4. VB에서 루트 네임 스페이스를 이스케이프하는 방법이 있습니까?
- 5. JavaME MIDlet이 변수를 지우지 않습니까?
- 6. tabbar 항목의 구성을 방지하는 방법이 있습니까?
- 7. 기본 자동 완성을 방지하는 표준 방법이 있습니까?
- 8. OpenGL에서 2, 변이의 보간을 방지하는 방법이 있습니까
- 9. 특정 URL의 캐싱을 방지하는 방법이 있습니까?
- 10. NHibernate - 버전 증가를 방지하는 방법이 있습니까?
- 11. VB에서
- 12. 사용자가 ASP.NET 페이지 클라이언트 측에 컨트롤을 추가하지 못하게하는 요인은 무엇입니까?
- 13. 액션에 선택적 매개 변수를 보내는 방법이 있습니까?
- 14. vba에서 변수를 평가하는 방법이 있습니까?
- 15. 데코레이터에 변수를 전달하는 방법이 있습니까?
- 16. stackview에 전역 변수를 갖는 방법이 있습니까?
- 17. ASP.NET MVC2에서 매개 변수를 전달하는 동안 redirectToAction을 반환하는 방법이 있습니까?
- 18. VB에서 "coroutine"기능이 있습니까?
- 19. asp.net 컴파일에서 기본 언어를 vb에서 C#
- 20. 오페라가 오버플로가있는 페이지 스크롤을 방지하는 방법 : 숨김?
- 21. 페이지 확대/축소시 배경 이미지의 크기가 변경되는 것을 방지하는 방법이 있습니까?
- 22. webapp을 구성하는 방법은 무엇입니까?
- 23. ASP.NET 페이지에 세션 변수를 저장하고 있습니까?
- 24. asp.net 페이지 안에 Html 엔티티가 있습니까? asp.net 페이지 내부
- 25. Template Toolkit에서 두 변수를 비교하는 방법이 있습니까?
- 26. Django - 템플릿에 변수를 만드는 방법이 있습니까?
- 27. 변수를 바인딩하는 방법이 있습니까? PHP 5
- 28. 이동 중에 변수를 지속시키는 방법이 있습니까?
- 29. Django의 일반 뷰에 변수를 전달하는 방법이 있습니까?
- 30. Ruby - __FILE__ 변수를 덮어 쓰는 방법이 있습니까?
그는 VB를 사용하고 있습니다 :) :) –
그냥 목록을 선언하고 매번 세션에 저장하겠습니까? Session ("ListOfStuff") = codeBehindList'? –
@Francisco : 감사합니다.하지만 C#에서 VB로 변환 할 수 있습니다. :) –