Asp.net 팀은 페이지 당 하나의 인스턴스 (HttpHandler) 만 존재하도록 스크립트 관리자를 설계 했으므로 ScriptManager.GetCurrent
과 같은 메서드를 확장 한 유효한 이유를 찾을 수 없습니다. 페이지. 개발자가 할 수없는 이유는 무엇입니까ScriptManager.GetCurrent 메서드의 이유
if(ScriptManager == null)
{
throw new Exception("The Below ajax control requires ScriptManager in the page");
}
ScriptManager는 ScriptManager 컨트롤의 ID입니다. 맞습니까? ScriptManager가 MasterPage에있을 때 사용자 정의 컨트롤에서 ID에 액세스 할 수 없습니다. – slfan
@slfan 죄송합니다. 여기에 시나리오를 게시하지 않았습니다. 그것은 어떤 ASP 파일 (usercontrol, masterpage, 자식 페이지, 중첩 된 masterpage). Asp.net 팀 (계속 개선됨)은 페이지에서 ScriptManager 인스턴스를 인식하는 방법을 고안했지만 페이지에있는 요청/응답에 'Current' ScriptManager 클래스를 설정하지 않았습니다 (ID가있을 수 있음). sManager, resourceManager 등)처럼 뭔가를 사용할 수있을 때'User.Identity.Name'을 사용하여 로그인 한 사람의 사용자 이름을 얻을 수 있습니다. 나는 이것이 순전히 재래식이며, 미래를위한 결정이라고 느낀다. – Deeptechtons