8
이 2의 차이점은 무엇입니까? API 문서에서 똑같은 일을하는 것처럼 보였습니다.ArrayAccess와 표현식 트리의 ArrayIndex
대
하는 경우 그들이 그렇게 내가 여기서 뭔가 빠진해야 중복 보인다.
이 2의 차이점은 무엇입니까? API 문서에서 똑같은 일을하는 것처럼 보였습니다.ArrayAccess와 표현식 트리의 ArrayIndex
대
하는 경우 그들이 그렇게 내가 여기서 뭔가 빠진해야 중복 보인다.
편집 : 초기 답변이 너무 잘못되어 다시 시도하고 있습니다.
Expression.ArrayAccess
은 배열의 요소 값을 가져 오거나 설정하는 데 사용할 수있는 IndexExpression
을 반환합니다.
Expression.ArrayIndex
은 제공된 배열 표현식의 순위 (차원 수)에 따라 BinaryExpression
또는 MethodCallExpression
을 반환합니다. 그런 다음 반환 된 표현식을 사용하여 배열에서 값을 읽을 수 있습니다.
그래서 ArrayAccess
은 배열 데이터에 대한 읽기 및 쓰기 액세스를 모두 제공하는 반면, ArrayIndex
은 읽기 액세스 만 제공합니다.
실제로 여러 개의 매개 변수를 사용하는 오버로드가 있습니다. – Alwyn
젠장 ... 놓친 그 : P – Corey
이유는 둘 다 존재하는 식 트리가. 닷넷 3.5와 닷넷 4 사이에서 변경하는 방법입니다 생각합니다. 3.5에서 식 트리는 할당을 지원하지 않았기 때문에 'ArrayIndex' 만있었습니다. 4에서는 배열에 값을 설정할 수있는 무언가가 필요했기 때문에 'ArrayAccess'가 추가되었습니다. – svick