Итак, какова цель существования как IIdentity, так и IPrincipal, а не некоторых IIdentityMergedWithPrincipal? Когда этого недостаточно для реализации в одном классе?
Кроме того, чтобы понять цель, я хотел бы знать, откуда взялась эта концепция:
- Он создан в .Net
- Существует концепция Identity/Principal как шаблон проектирования, который
System.Security.Principalреализован в этих интерфейсах - Он создан в другом месте и поддерживается для совместимости.
Следовательно, UserPrincipal из System.DirectoryServices действует аналогично IPrincipal, но не реализует его случайно или намеренно?
P.S. Я ищу аргументы за идею, а не сравнение преимуществ/противоречий, поэтому, пожалуйста, постарайтесь не начинать дискуссионную дискуссию