public UserResourcePool AddUserResourcePool(decimal rate)
        {
            var userResourcePool = new UserResourcePool(this, rate);

            UserResourcePoolSet.Add(userResourcePool);
            return(userResourcePool);
        }
        // PUT odata/UserResourcePool(5)
        public virtual async Task<IHttpActionResult> Put([FromODataUri] int resourcePoolId, UserResourcePool userResourcePool)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (resourcePoolId != userResourcePool.ResourcePoolId)
            {
                return BadRequest();
            }

            try
            {
                await MainUnitOfWork.UpdateAsync(userResourcePool);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!MainUnitOfWork.Exists(resourcePoolId))
                {
                    return NotFound();
                }
                else
                {
                    return Conflict();
                }
            }

            return Ok(userResourcePool);
        }
        // POST odata/UserResourcePool
        public virtual async Task<IHttpActionResult> Post(UserResourcePool userResourcePool)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            try
            {
                await MainUnitOfWork.InsertAsync(userResourcePool);
            }
            catch (DbUpdateException)
            {
                if (MainUnitOfWork.Exists(userResourcePool.ResourcePoolId))
                {
                    return Conflict();
                }
                else
                {
                    throw;
                }
            }

            return Created(userResourcePool);
        }
 public UserResourcePool AddUserResourcePool(User user, decimal rate)
 {
     // Todo Validation?
     // var userResourcePool = new UserResourcePool(user, this, rate);
     var userResourcePool = new UserResourcePool(this, rate);
     user.UserResourcePoolSet.Add(userResourcePool);
     UserResourcePoolSet.Add(userResourcePool);
     return userResourcePool;
 }
 public UserResourcePool AddUserResourcePool(decimal rate)
 {
     var userResourcePool = new UserResourcePool(this, rate);
     UserResourcePoolSet.Add(userResourcePool);
     return userResourcePool;
 }