当前位置: 首页>>代码示例>>C#>>正文


C# UserAuth.Set方法代码示例

本文整理汇总了C#中ServiceStack.ServiceInterface.Auth.UserAuth.Set方法的典型用法代码示例。如果您正苦于以下问题:C# UserAuth.Set方法的具体用法?C# UserAuth.Set怎么用?C# UserAuth.Set使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ServiceStack.ServiceInterface.Auth.UserAuth的用法示例。


在下文中一共展示了UserAuth.Set方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Post

        public static Response<User> Post(this User request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {

			if(request.IsDummyPassword())
				throw HttpError.Unauthorized("password no válido");

			var authRepo = httpRequest.TryResolve<IUserAuthRepository>();
			if(authRepo==null)
				throw HttpError.NotFound("AuthRepository NO configurado");

			var  user= new UserAuth
			{	
				FirstName= request.FirstName,
				LastName= request.LastName,
				Email= request.Email,
				UserName= request.UserName,
				DisplayName = request.FirstName +" "+ request.LastName
			};
			user.Set<UserMeta>( new UserMeta{
				Cargo= request.Cargo,
				Activo=request.Activo,
				ExpiresAt= request.ExpiresAt
			});

			user = authRepo.CreateUserAuth(user, request.Password);
			request.Id= user.Id;
			request.SetDummyPassword();

			List<User> data = new List<User>();
			data.Add(request);
			
			return new Response<User>(){
				Data=data
			};	
		}
开发者ID:angelcolmenares,项目名称:Aicl.Delfin,代码行数:37,代码来源:BL.User.cs

示例2: CreateUser

		public User CreateUser(CreateUser request)
		{
			var httpRequest = RequestContext.Get<IHttpRequest>();
			
			var authRepo = httpRequest.TryResolve<IUserAuthRepository>();
			if(authRepo==null)
				throw HttpError.NotFound("AuthRepository NO found");
			
			var  user= new UserAuth
			{	
				FirstName= request.FirstName,
				LastName= request.LastName,
				Email= request.Email,
				UserName= request.UserName,
				DisplayName = request.FirstName +" "+ request.LastName
			};
			user.Set<UserMeta>( new UserMeta{
				Info= request.Info,
				IsActive=request.IsActive,
				ExpiresAt= request.ExpiresAt
			});
			
			user = authRepo.CreateUserAuth(user, request.Password);

			User u = new User();
			u.PopulateWith(user);
			return u;
		}
开发者ID:aicl,项目名称:Cayita.Tools,代码行数:28,代码来源:UserManager.cs

示例3: Put

        public static Response<User> Put(this User request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
			var userSession = httpRequest.GetSession();

			if(!( userSession.HasRole(RoleNames.Admin) ||
				    userSession.HasPermission("User.update") ))
				throw HttpError.Unauthorized("Usuario no autorizado para actualizar");


			var authRepo = httpRequest.TryResolve<IUserAuthRepository>();
			if(authRepo==null)
				throw HttpError.NotFound("AuthRepository NO configurado");

			var  user= authRepo.GetUserAuth(request.Id.ToString());

			if (!(request.Id== int.Parse(userSession.UserAuthId) ||
				userSession.HasRole(RoleNames.Admin)) )
				throw HttpError.Unauthorized("No puede cambiar los datos de otro usuario");

			if(user == default(UserAuth))
				throw HttpError.NotFound(
					string.Format("Usuario con Id:'{0}' NO encontrado",request.Id));


			var  newUser= new UserAuth
			{	
				Id= request.Id,
				FirstName= request.FirstName,
				LastName= request.LastName,
				Email= request.Email,
				UserName= request.UserName,
				DisplayName= request.FirstName+" "+request.LastName,
				ModifiedDate= System.DateTime.Now,
			};
			newUser.Set<UserMeta>( new UserMeta{
				Cargo= request.Cargo,
				Activo=request.Activo,
				ExpiresAt= request.ExpiresAt
			});

			if(request.Password.IsNullOrEmpty() 
			   ||  request.IsDummyPassword()){

				factory.Execute(proxy=>{

					proxy.Update<UserAuth>(
						newUser,
						ev=>ev.Where(q=>q.Id==request.Id).
					Update(f=> new {
						f.UserName, f.FirstName, f.LastName, f.Email, f.Meta,
						f.DisplayName,
						f.ModifiedDate
					}));
				});

			}

			else
				user = authRepo.UpdateUserAuth(user, newUser,request.Password);

			request.SetDummyPassword();

			List<User> data = new List<User>();
			data.Add(request);
			
			return new Response<User>(){
				Data=data
			};	
		}
开发者ID:angelcolmenares,项目名称:Aicl.Delfin,代码行数:71,代码来源:BL.User.cs

示例4: Update

		public User Update(UpdateUser request)
		{
			var httpRequest = RequestContext.Get<IHttpRequest>();

			var userSession = httpRequest.GetSession();
			
			if(!( userSession.HasRole(RoleNames.Admin) 
			     ||     userSession.HasPermission("User.update") 
			 ))
				throw HttpError.Unauthorized("Update no allowed");
			
			
			var authRepo = httpRequest.TryResolve<IUserAuthRepository>();
			if(authRepo==null)
				throw HttpError.NotFound("AuthRepository NO found");
			
			var  user= authRepo.GetUserAuth(request.Id.ToString());
			
			if (!(request.Id== int.Parse(userSession.UserAuthId) ||
			      userSession.HasRole(RoleNames.Admin)) )
				throw HttpError.Unauthorized("Update no allowed (no admin)");
			
			if(user == default(UserAuth))
				throw HttpError.NotFound(
					string.Format("User  Id:'{0}' NO found",request.Id));
			
			
			var  newUser= new UserAuth
			{	
				Id= request.Id,
				FirstName= request.FirstName,
				LastName= request.LastName,
				Email= request.Email,
				UserName= request.UserName,
				DisplayName= request.FirstName+" "+request.LastName,
				ModifiedDate= DateTime.Now,
			};
			newUser.Set<UserMeta>( new UserMeta{
				Info= request.Info,
				IsActive=request.IsActive,
				ExpiresAt= request.ExpiresAt
			});


			if(request.Password.IsNullOrEmpty())
			{
					AuthRepoProxy.Execute(db=>{
					
					db.UpdateOnly(
						newUser,
						ev=>ev.Where(q=>q.Id==request.Id).
						Update(f=> new {
						f.UserName, f.FirstName, f.LastName, f.Email, f.Meta,
						f.DisplayName,
						f.ModifiedDate
					}));
				});

			}
			
			else
			{
				user = authRepo.UpdateUserAuth(user, newUser,request.Password);
			}

			User u = new User();
			u.PopulateWith(newUser);
			return u;						
				
		}
开发者ID:aicl,项目名称:Cayita.Tools,代码行数:70,代码来源:UserManager.cs


注:本文中的ServiceStack.ServiceInterface.Auth.UserAuth.Set方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。