컨트롤러 개체에서 요청 개체에 액세스하려는 경우 HttpContext.Request
을 작성해야하지만 MVC보기에서 동일한 개체에 액세스하려면 HttpContext.Current.Request
을 작성해야합니다. 그들 사이에 차이가 있습니까? 내가 직면 한 문제는 콘트롤러 액션에서 HttpContext.Response.Cookies.Add
을 통해 설정 한 쿠키가 MVC 뷰의 HttpContext.Current.Request.Cookies
컬렉션에서 검색되지 않는다는 것입니다. 자바 스크립트를 통해 해당 쿠키를 볼 수는 있지만. 당신이 쓰는 컨트롤러 유형 HttpContextBase
이다 HttpContext
라는 속성을 가지고있는 추상 클래스 Controller
을 상속하기 때문에HttpContext.Current.Request와 HttpContext.Request 사이에 차이가 있습니까?
1
A
답변
2
당신이보기에 컨트롤러 HttpContext.Request
및 HttpContext.Current.Request
를 작성해야하는 이유입니다. 그런 다음 뷰는 현재 요청에 대한 httpcontext 객체를 제공하는 봉인 된 클래스 HttpContext
을 사용합니다.
그들간에 차이가 있습니까?
아니요. 둘 다 현재 요청에 대해 동일한 HttpRequest
개체를 제공합니다.
0
내가 틀린 경우를 제외하고는 응답에 쿠키를 씁니다. 그러나 다음 요청이있을 때까지 요청에 해당 쿠키를 사용할 수 없습니다 (즉, 동일한 또는 새 페이지를 다시로드해야만 그것을 쿠키 읽기). 쿠키는 컨트롤러와 뷰간에 정보를 공유하는 좋은 방법이 아니므로 ViewData 또는 ViewBag를 사용해야합니다.
또한 이미 출력 한 후에 쿠키에 쓰지 않아야합니다. 이는 Response.Write
을 권장하지 않는 이유 중 하나입니다.
자바 스크립트가 작동하는 이유는 서버가 아닌 클라이언트에서 쿠키를 읽는 것입니다.
관련 문제
- 1. 마진 값 사이에 차이가 있습니까?
- 2. 1.1em과 1.05em 사이에 차이가 있습니까?
- 3. QString & QString & 사이에 차이가 있습니까?
- 4. ExecutorService.submit와 ExecutorService.execute 사이에 차이가 있습니까?
- 5. Ruby에서 "! ="와 "! ~"사이에 차이가 있습니까?
- 6. Assembly.ExportedTypes와 Assembly.GetExportedTypes() 사이에 차이가 있습니까?
- 7. 배열 사이에 차이가 있습니다
- 8. 왜 아래 주어진 출력 사이에 차이가 있습니까?
- 9. "center_horizontal | center_vertical"과 "center"사이에 차이가 있습니까
- 10. 왜 내 콘텐츠 사이에 큰 차이가 있습니까?
- 11. int와 struct 사이에 성능 차이가 있습니까?
- 12. myNullableLong.HasValue와 myNullableLong! = null 사이에 차이가 있습니까?
- 13. saveAs()와 exportDocument() 사이에 성능 차이가 있습니까?
- 14. 메타 "키워드"와 "키워드"사이에 차이가 있습니까
- 15. nUnit에서 assert.GreaterOrEqual과 Assert.IsTrue 사이에 차이가 있습니까?
- 16. 타이머와 성능 사이에 성능 차이가 있습니까?
- 17. silverlight는 localhost와 machinename 사이에 차이가 있습니까?
- 18. 이 두 루프 사이에 차이가 있습니까?
- 19. dwr과 jquery ajax 사이에 차이가 있습니까?
- 20. window.onload = stuff와 window.onload = stuff() 사이에 차이가 있습니까?
- 21. bootstrap.css와 bootstrap.min.css 사이에 어떤 차이가 있습니까?
- 22. LinkLabel.Click과 LinkLabel.LinkClicked 이벤트 사이에 차이가 있습니까?
- 23. UIBarButton은 View와 tableViewController 사이에 차이가 있습니까?
- 24. Lisp : 'nil과 nil 사이에 어떤 차이가 있습니까?
- 25. 어떻게 열 값의 합계 사이에 차이가 있습니까?
- 26. HttpContext.Current.Request와 HttpContext.Current.Response의 차이점
- 27. moq을 사용하여 httpcontext.request 채우기
- 28. 두 날짜 사이에 차이가 있습니다.
- 29. lock.lock() 전 사이에 어떤 차이가
- 30. 복제본과 복제본간에 차이가 있습니까
좋아, 내가 직면하는 문제는, 나는 컨트롤러 동작에서 쿠키를 설정하고 MVC보기에서 읽기를 원하지만 값이 표시되지 않습니다. 그러나, 내가 같은보기의 자바 스크립트에서 그것을 읽으려고하면, 그것은 가치를 보여주고있다. 무엇이 해결책일까요? – Nirman
그래서 만약 당신이 :'Response.Cookies.Add (새로운 HttpCookie ("cookie_monster", "six-eyed"));'를 컨트롤러에 넣고 @
@ HttpContext.Current.Request.Cookies [ "cookie_monster"] .Value
'아무것도 보이지 않습니까? 그런 식으로 사용하고 있습니까? 말이되지 않습니다. –