게으른로드 및 변경 추적 최적화
게으른로드는 실제로 코드에 액세스 할 때까지 로딩과 관련된 엔티티를 연기 할 수 있습니다. 가상 속성이 처음으로 액세스되면 프록시는 요청을 가로 채서 데이터베이스에서 관련 엔티티를로드합니다. 가상 속성을 통해 관련 엔티티를 수정하면 엔티티 프레임 워크가 변경 사항을 자동으로 감지하고 추적 할 수 있습니다. This enhances the accuracy of change tracking, ensuring that any updates or deletions are propagated correctly.
Implementation
The Entity Framework requires navigation properties, which represent relationships between entities, to be virtual. 이러한 속성을 가상으로 표시함으로써 엔티티 프레임 워크는 POCO 유형에서 파생 된 동적으로 생성 된 서브 클래스를 생성 할 수 있습니다. 이 서브 클래스는 가상 특성의 내부적으로 생성 된 게터와 세터를 무시하고 프록시 기능을 가능하게하고 게으른로드 및 변경 추적을 지원합니다. 당신의 poco 유형. 이 서브 클래스는 가상 특성에 대한 액세스를 가로 채어 게으른로드 및 변경 추적을 가능하게하는 프록시 역할을 효과적으로 작용합니다.
왜 가상 특성?
는 필드가 아니라 오히려 getter와 setter입니다. 이러한 방법은 컴파일 시간에 내부 방법으로 변환됩니다. 그것들을 가상으로 표시함으로써, 그들은 엔티티 프레임 워크에 의해 생성 된 동적으로 생성 된 서브 클래스로 인해 원하는 동작을 허용 할 수 있습니다.
결론
[virtual '키워드는 가상 특성에 필수적입니다. 게으른로드를 가능하게하고 변경 추적을 최적화하여 응용 프로그램의 성능과 효율성을 향상시킵니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3