0

안녕 얘들 아 내가 예를 들어, 방법의 순서가있는 경우 나 하나 개의 질문,전달 parammeters

있습니다

parammeter "httpContext.Current를 사용하여 할 수있는 가장 좋은 방법은, 얼마나
Main() 
{ 
    Method1(); 
} 

Method1() 
{ 
    Method2(); 
} 

Method2() 
{ 
    Method3(); 
} 

Method3() 
{ 
    ObtainsUserPermission(httpContext.Current.User.Name); 
} 

. User.Name "마지막 Method3, 또는 각 메서드에서 매개 변수를 통해 전달? 좋아요 :

Main() 
{ 
    Method1(httpContext.Current.User.Name); 
} 

Method1(string name) 
{ 
    Method2(name); 
} 

Method2(string name) 
{ 
    Method3(name); 
} 

Method3(string name) 
{ 
    ObtainsUserPermission(name); 
} 

감사합니다.

답변

1

이것은 마법 매개 변수처럼 냄새가납니다.

좋은 법칙은 다음과 같습니다. - method3()의 실행을 이름에 종속 시키려면 이름을 매개 변수로 전달하십시오. 일반적으로 전역 함수는 함수 내에서 사용하면 안됩니다. 디버깅 및 유지 관리가 복잡해질 수 있습니다. 예외는 클래스의 멤버입니다.이 경우 멤버가 메서드 내부에서 볼 수 있으며 매개 변수로 전달할 필요가 없습니다.

+0

감사합니다. 좋은 조언 – Tarlak