Reflector를 통해 실행되는 동안 WPF 응용 프로그램에서 버그의 근본 원인을 찾는 동안 많은 다른 클래스, 멤버 등을 가로 질러 흩어져있는 FriendAccessAllowedAttribute
내부 특성을 발견했습니다. 정확히이 속성을 사용하는 것을 찾을 수 없습니다 (있는 경우). 내 생각 엔이 부분은 C++/CLI 인프라의 일부이지만 MSDN, C++/CLI 사양 및 CLI 사양을 검색하면 아무 것도 알 수 없습니다. 아무도 그것이 사용 된 것을 알고 있습니까?WPF에서 내부 FriendAccessAllowedAttribute 사용
답변
기억하기는 프레임 워크의 친구 어셈블리 간의 종속성을 제어하는 방법이었습니다. 기본적으로 어셈블리 B에 어셈블리 A "친구"권한을 부여하면 모두 A의 내부 멤버를 A에서 사용할 수 없게됩니다. 그러면 해당 멤버에 대한 변경이 잠재적으로 손상 될 수 있기 때문입니다 (또한 검토해야 할 보안 영역을 증가시킬 수 있습니다). 이 속성이 Silverlight에서 존경받으며, 전체 프레임 워크에 대해 확신 할 수 없습니다.
그래, 나는 반사경을 파고 들었다. 그러나 Silverlight를 체크 아웃하지는 않았다. – user7116
흥미롭게도 그 속성은 그 자체로 기인합니다! C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll
에서 디 컴파일
, 버전 4.0 :
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum |
AttributeTargets.Constructor | AttributeTargets.Method |
AttributeTargets.Property | AttributeTargets.Field |
AttributeTargets.Event | AttributeTargets.Interface,
AllowMultiple = false, Inherited = false)]
[FriendAccessAllowed]
internal sealed class FriendAccessAllowedAttribute : Attribute
{
}
그래서 내가 만
mscorlib
의 친구를 할당 선택한 어셈블리에서 사용할 수있는 가정.
편집Microsoft's reference source for the attribute는 정의가 함께 InternalsVisibleToAttribute
보여줍니다 및 주석 문자열이 포함
AllInternalsVisible 친구 어셈블리에 대한 사실이 아닌 경우가의 FriendAccessAllowed 속성이 그 친구와 공유되는 내부 표시를 어셈블리.
- 1. WPF에서 System.Drawing.Printing.PrintDocument 사용
- 2. wpf에서 종속성 속성 사용
- 3. 종속성 속성 WPF에서 사용
- 4. XContainer() 내부 표현식 사용
- 5. WPF에서 ObservableCollection과 함께 HashSet 사용
- 6. WPF에서 WindowsFormsHost의 컨트롤에 SetWindowTheme() 사용?
- 7. WPF에서 알림에 snarl을 사용 하시겠습니까?
- 8. WPF에서 ProgressBar와 함께 BackgroundWorker 사용
- 9. WPF에서 75 ~ 100 % CPU 사용?
- 10. WPF에서 얼굴 도려기 사용 안 함
- 11. jQuery : $ (this) 내부 함수 사용?
- 12. WPF에서 DataTrigger로 사용자 지정 종속성 속성 사용
- 13. WPF에서 오류 adorner로 Controls.Popup 사용 문제
- 14. x : WPF에서 이름 또는 이름 사용
- 15. WPF에서 전달 된 이벤트 - 작업 대리자 사용
- 16. 명령에서 UI 수정 - WPF에서 명령 바인딩 사용
- 17. WPF에서 큰 이미지와 함께 이미지 소스 사용
- 18. SQLite WPF에서 ListView를 채우는 데 사용 #
- 19. WPF에서 DataGridCheckBoxColumn 대신 그림 또는 아이콘 사용
- 20. WPF의 내부 광선 효과
- 21. WPF에서 BindingExpressing
- 22. MySql 내부 선택에서 열 별칭 사용
- 23. SelectOneMenu 내부 유효성 검사 사용 안 함
- 24. html 요소 내부 텍스트를 변경하려면 PHP를 사용
- 25. asp 내부 요소와 jquery 사용 : gridview
- 26. UIViewController 내부 UITableView 안에 UITableViewCell Nib 사용
- 27. SQL - 왼쪽 조인과 내부 조인을 함께 사용
- 28. MVC : 사용자 지정 HtmlHelper 내부 BeginForm 사용
- 29. 테스트를 위해 VS2010 내부 브라우저 사용
- 30. 카산드라의 내부 키 공간 "시스템"의 사용
또한이 속성을 사용하여'System.Threading.Tasks.Task'에 몇 가지 필드/메소드가 있습니다. –