이 경우 "=>"할당이 작동하지만 "="가 아닌 이유는 무엇입니까?

Whitaay

내 직장에서 C # MVC 웹 앱을 상속했고 다음과 같은 컨트롤러 클래스 내부에 직접 할당이 있습니다.

public class FooController : Controller
{
    private IAuthenticationManager AuthenticationManager => HttpContext.GetOwinContext().Authentication;
}

Visual Studio는 "; expected"와 같은 오류로 강조 표시합니다. 그러나 그것은 잘 컴파일되고 실행됩니다. "=>"를 간단한 할당 "="로 변경하면 "An object reference is required for the non-static field bla bla bla ..."오류와 함께 HttpContext가 강조 표시되고 컴파일되지 않습니다.

그래서 여기 제 질문이 있습니다. "=>"연산자를 사용하면 왜 제대로 컴파일되고 작동합니까? 저는 C #을 처음 사용합니다 (Android / iOS 개발에서 시작됨). 그래서 몇 가지를 이해하는 것은 쉽지만 이와 같은 것들은 저를 당혹스럽게합니다.

에이미

=>과제가 아닙니다. C # 6에 추가 된 바로 가기, 구문 설탕이며 "표현 본문 함수 멤버"라고합니다.

다음과 같습니다.

private IAuthenticationManager AuthenticationManager
{
    get { return HttpContext.GetOwinContext().Authentication; }
}

편집 : BradleyDotNET에서 의견을 추가하여 대답을 명확히합니다.

더 구체적으로; 초기화시 클래스 멤버에 메서드 반환 값을 할당하려고하지 않고 속성 getter에서 메서드 호출을 반환하기 때문에 할당을 통해 작동합니다 (허용되지 않음).

자세한 내용은 이 MSDN 문서를 참조하십시오 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

img 경로가 작동하지만 path.join이 아닌 이유는 무엇입니까?

분류에서Dev

while 루프가 작동하지만 내 값을 반환 할 때 if 문이 아닌 이유는 무엇입니까?

분류에서Dev

내 UIPickerView가 수퍼 뷰가 아닌 경우에만 응답하는 이유는 무엇입니까?

분류에서Dev

크롬 브라우저가 아닌 경우 Flexbox가 올바르게 작동하지 않는 이유는 무엇입니까?

분류에서Dev

requestMIDIAccess가 로컬에서 작동하지만 원격이 아닌 이유는 무엇입니까?

분류에서Dev

Python : asyncio.gather ()가 아닌 경우 AsyncIO를 사용하는 이유는 무엇입니까?

분류에서Dev

nullable이 아닌 값을 null로 설정할 때 TypeScript가 경고하지 않는 이유는 무엇입니까?

분류에서Dev

"지도"가 워킹이 아닌 이유는 무엇입니까?

분류에서Dev

이런 경우 SFINAE가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

상수가 아닌 포인터에 문자열 리터럴을 할당 할 때 C 컴파일러가 경고하지 않는 이유는 무엇입니까?

분류에서Dev

이 코드가 한 가지 경우에만 작동하는 이유는 무엇입니까?

분류에서Dev

findAll ()이 작동하고 find ($ id)가 아닌 이유는 무엇입니까?

분류에서Dev

변수에 새 배열을 할당하면 값이 아닌 참조가 변경되는 이유는 무엇입니까?

분류에서Dev

echo *가 ls로 작동하고 printf *가 아닌 이유는 무엇입니까?

분류에서Dev

로컬 주소를 반환하지만 로컬 변수가 아닌 경우 런타임 오류가 발생하는 이유는 무엇입니까?

분류에서Dev

React Bootstrap-값이 증가하지만 0 %로 재설정 할 때가 아닌 경우 ProgressBar를 애니메이션하는 방법은 무엇입니까?

분류에서Dev

두 개의 열이 길이가 아닌 경우 0을 추가하는 방법은 무엇입니까?

분류에서Dev

범례 선택이 'ax'가 아닌 'ax.twinx ()'에서만 작동하는 이유는 무엇입니까?

분류에서Dev

관리자가 아닌 Windows : Firefox에서는 프록시가 작동하지만 cmd에서는 작동하지 않는 이유는 무엇입니까?

분류에서Dev

Hadoop이 데이터웨어 하우스가 아닌 이유는 무엇입니까?

분류에서Dev

Hadoop이 데이터웨어 하우스가 아닌 이유는 무엇입니까?

분류에서Dev

bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

분류에서Dev

bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

분류에서Dev

bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

분류에서Dev

첫 번째 이름 서버가 재귀 적이 아닌 경우 DNS 쿼리가 실패하는 이유는 무엇입니까?

분류에서Dev

Grails가 단일 엔드 연결이 아닌 경우 조인 가져 오기를 권장하지 않는 이유는 무엇입니까?

분류에서Dev

Vue.js 키 수정자가`<button>`에서만 작동하고`<div>`가 아닌 이유는 무엇입니까?

분류에서Dev

루트가 아닌 사용자와 setuid ()가 작동하지 않는 이유는 무엇입니까?

분류에서Dev

루트 뷰 컨트롤러가 아닌데 hidesBottomBarWhenPushed가 작동하지 않는 이유는 무엇입니까?

Related 관련 기사

  1. 1

    img 경로가 작동하지만 path.join이 아닌 이유는 무엇입니까?

  2. 2

    while 루프가 작동하지만 내 값을 반환 할 때 if 문이 아닌 이유는 무엇입니까?

  3. 3

    내 UIPickerView가 수퍼 뷰가 아닌 경우에만 응답하는 이유는 무엇입니까?

  4. 4

    크롬 브라우저가 아닌 경우 Flexbox가 올바르게 작동하지 않는 이유는 무엇입니까?

  5. 5

    requestMIDIAccess가 로컬에서 작동하지만 원격이 아닌 이유는 무엇입니까?

  6. 6

    Python : asyncio.gather ()가 아닌 경우 AsyncIO를 사용하는 이유는 무엇입니까?

  7. 7

    nullable이 아닌 값을 null로 설정할 때 TypeScript가 경고하지 않는 이유는 무엇입니까?

  8. 8

    "지도"가 워킹이 아닌 이유는 무엇입니까?

  9. 9

    이런 경우 SFINAE가 작동하지 않는 이유는 무엇입니까?

  10. 10

    상수가 아닌 포인터에 문자열 리터럴을 할당 할 때 C 컴파일러가 경고하지 않는 이유는 무엇입니까?

  11. 11

    이 코드가 한 가지 경우에만 작동하는 이유는 무엇입니까?

  12. 12

    findAll ()이 작동하고 find ($ id)가 아닌 이유는 무엇입니까?

  13. 13

    변수에 새 배열을 할당하면 값이 아닌 참조가 변경되는 이유는 무엇입니까?

  14. 14

    echo *가 ls로 작동하고 printf *가 아닌 이유는 무엇입니까?

  15. 15

    로컬 주소를 반환하지만 로컬 변수가 아닌 경우 런타임 오류가 발생하는 이유는 무엇입니까?

  16. 16

    React Bootstrap-값이 증가하지만 0 %로 재설정 할 때가 아닌 경우 ProgressBar를 애니메이션하는 방법은 무엇입니까?

  17. 17

    두 개의 열이 길이가 아닌 경우 0을 추가하는 방법은 무엇입니까?

  18. 18

    범례 선택이 'ax'가 아닌 'ax.twinx ()'에서만 작동하는 이유는 무엇입니까?

  19. 19

    관리자가 아닌 Windows : Firefox에서는 프록시가 작동하지만 cmd에서는 작동하지 않는 이유는 무엇입니까?

  20. 20

    Hadoop이 데이터웨어 하우스가 아닌 이유는 무엇입니까?

  21. 21

    Hadoop이 데이터웨어 하우스가 아닌 이유는 무엇입니까?

  22. 22

    bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

  23. 23

    bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

  24. 24

    bashrc가 아닌 .profile이 ~ / bin을 경로에 추가하는 이유는 무엇입니까?

  25. 25

    첫 번째 이름 서버가 재귀 적이 아닌 경우 DNS 쿼리가 실패하는 이유는 무엇입니까?

  26. 26

    Grails가 단일 엔드 연결이 아닌 경우 조인 가져 오기를 권장하지 않는 이유는 무엇입니까?

  27. 27

    Vue.js 키 수정자가`<button>`에서만 작동하고`<div>`가 아닌 이유는 무엇입니까?

  28. 28

    루트가 아닌 사용자와 setuid ()가 작동하지 않는 이유는 무엇입니까?

  29. 29

    루트 뷰 컨트롤러가 아닌데 hidesBottomBarWhenPushed가 작동하지 않는 이유는 무엇입니까?

뜨겁다태그

보관