public DefaultOfflineManager(ILockService lockService, CurrentUserService.IUser currentUser) { Contract.Requires <ArgumentNullException>(lockService != null); Contract.Requires <ArgumentNullException>(currentUser != null); _lockService = lockService; _currentUser = currentUser; }
/// <summary> /// Получить пользователя в текущем окружении. /// </summary> /// <returns> /// Если текущее приложение исполняется в веб окружении, /// то вернет учетные данные о текущем web-пользователе, иначе о windows-пользователе. /// </returns> private CurrentUserService.IUser GetUser() { if (HttpContext.Current != null) { return(_webHttpUser ?? (_webHttpUser = new CurrentWebHttpUser())); } return(_winUser ?? (_winUser = new CurrentWindowsUser())); }
/// <summary> /// Returns user login in "DOMAIN\login" format (<see href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa380525(v=vs.85).aspx"/>). /// "DOMAIN" - NetBIOS domain name; "login" - user account name. /// </summary> /// <param name="user">User for building login.</param> /// <returns>User login in "DOMAIN\login" format.</returns> public static string GetDownLevelLogonName(this CurrentUserService.IUser user) { if (user == null) { throw new ArgumentNullException("user"); } return(string.Concat(user.Domain, "\\", user.Login)); }