public static async Task<HttpResponseMessage> CreateProjectAsync()
 {
     var client = new HttpClient();
     var project = new ProjectActionRequest()
     {
         Name = "TypicalNamsdfse",
         AccessLevel = AccessLevel.Public,
         Info = "TypicalInfo",
         LandingImage = new Image(
             new Uri("https://pp.vk.me/c543107/v543107881/af01/zxFX1YLyVOE.jpg"),
             new Uri("https://pp.vk.me/c543107/v543107881/af01/zxFX1YLyVOE.jpg")),
         ProjectTypes = new[] { ProjectType.Game, ProjectType.MobileApp, }
     };
     var response =
         await client.PostAsync(
             new Uri(Settings.EndpointUri, "projects"),
             project,
             new JsonMediaTypeFormatter());
     return response;
 }
Exemple #2
0
        public IHttpActionResult CreateProject([FromBody] ProjectActionRequest createProjectRequest)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var request = new CreateProjectRequest(
                createProjectRequest.Name,
                createProjectRequest.ProjectTypes,
                createProjectRequest.Info,
                createProjectRequest.ProjectStatus,
                createProjectRequest.AccessLevel,
                createProjectRequest.LandingImage,
                createProjectRequest.Screenshots);

            var projectId = _projectProvider.CreateProject(request);

            return(Ok(projectId));
        }
Exemple #3
0
        public IHttpActionResult UpdateProject(int projectId, [FromBody] ProjectActionRequest updateProjectRequest)
        {
            Require.Positive(projectId, nameof(projectId));

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var projectToUpdate = _projectProvider.GetProject(projectId);

            projectToUpdate.Info          = updateProjectRequest.Info;
            projectToUpdate.AccessLevel   = updateProjectRequest.AccessLevel;
            projectToUpdate.Name          = updateProjectRequest.Name;
            projectToUpdate.ProjectTypes  = new HashSet <ProjectType>(updateProjectRequest.ProjectTypes);
            projectToUpdate.ProjectStatus = updateProjectRequest.ProjectStatus;
            projectToUpdate.LandingImage  = updateProjectRequest.LandingImage;
            projectToUpdate.Screenshots   = new HashSet <Image>(updateProjectRequest.Screenshots);

            _projectProvider.UpdateProject(projectToUpdate);

            return(Ok());
        }