private async Task AddDesignReference_ShouldWorkFine()
        {
            var context = ContextInitializer.InitializeContext();

            await this.SeedData(context);

            this.designBoardServce = new DesignBoardService(context);

            var designBoard = new DesignBoardCreateInputModel
            {
                ProjectId  = "bb2bd817-98cd-4cf3-a80a-53ea0cd9c200",
                CustomerId = new Guid("cb2bd817-98cd-4cf3-a80a-53ea0cd9c200").ToString(),
                Name       = "Test Design Board",
            };

            var designRefernce = new ReferenceInputModel
            {
                CustomerId    = new Guid("cb2bd817-98cd-4cf3-a80a-53ea0cd9c200").ToString(),
                ImageUrl      = "https://test.test",
                DesignBoardId = "de2bd817-98cd-4cf3-a80a-53ea0cd9c200",
            };

            await this.designBoardServce.AddDesignBoard(designBoard);

            var result = await this.designBoardServce.AddDesignReference(designRefernce);

            Assert.Equal("DesignReference created successfully!", result);
        }
        public async Task <IActionResult> Create(string id)
        {
            var model = new ReferenceInputModel
            {
                DesignBoardId = id,
                CustomerId    = this.User.FindFirst(ClaimTypes.NameIdentifier).Value,
            };

            return(this.View(model));
        }
        public async Task <IActionResult> Create(ReferenceInputModel model)
        {
            model.DesignBoard = await this.designBoardService.GetCurrentDesignBoard(model.DesignBoardId);

            if (this.ModelState.IsValid)
            {
                await this.designBoardService.AddDesignReference(model);
            }

            return(this.RedirectToAction("Details", "Project", new { id = model.DesignBoard.ProjectId }));
        }
        public async Task <string> AddDesignReference(ReferenceInputModel model)
        {
            var reference = new DesignReference
            {
                CustomerId    = model.CustomerId,
                DesignBoardId = model.DesignBoardId,
                DesignBoard   = await this.GetCurrentDesignBoard(model.DesignBoardId),
                ImageUrl      = model.ImageUrl,
            };

            this.context.DesignReferences.Add(reference);

            await this.context.SaveChangesAsync();

            return("DesignReference created successfully!");
        }