public async Task<Project> CreateProject(Project project) { StringBuilder requestUri = new StringBuilder() .Append(this.SiteUrl) .Append("/_api/web/lists/getbyTitle('") .Append(this.ProjectsListName) .Append("')/items"); XElement entry = project.ToXElement((string)base.GetFromCache(this.ProjectsListName)); StringContent requestContent = new StringContent(entry.ToString()); HttpResponseMessage response = await this.Post(requestUri.ToString(), requestContent); string responseString = await response.Content.ReadAsStringAsync(); return XElement.Parse(responseString).ToProject(); }
public async Task <bool> UpdateProject(Project project) { StringBuilder requestUri = new StringBuilder() .Append(this.SiteUrl) .Append("/_api/web/lists/getbyTitle('") .Append(this.ProjectsListName) .Append("')/getItemByStringId('") .Append(project.Id.ToString()) .Append("')"); XElement entry = project.ToXElement((string)base.GetFromCache(this.ProjectsListName)); StringContent requestContent = new StringContent(entry.ToString()); HttpResponseMessage response = await this.Patch(requestUri.ToString(), project.__eTag, requestContent); return(response.IsSuccessStatusCode); }
public async Task <Project> CreateProject(Project project) { StringBuilder requestUri = new StringBuilder() .Append(this.SiteUrl) .Append("/_api/web/lists/getbyTitle('") .Append(this.ProjectsListName) .Append("')/items"); XElement entry = project.ToXElement((string)base.GetFromCache(this.ProjectsListName)); StringContent requestContent = new StringContent(entry.ToString()); HttpResponseMessage response = await this.Post(requestUri.ToString(), requestContent); string responseString = await response.Content.ReadAsStringAsync(); return(XElement.Parse(responseString).ToProject()); }
public async Task<bool> UpdateProject(Project project) { StringBuilder requestUri = new StringBuilder() .Append(this.SiteUrl) .Append("/_api/web/lists/getbyTitle('") .Append(this.ProjectsListName) .Append("')/getItemByStringId('") .Append(project.Id.ToString()) .Append("')"); XElement entry = project.ToXElement((string)base.GetFromCache(this.ProjectsListName)); StringContent requestContent = new StringContent(entry.ToString()); HttpResponseMessage response = await this.Patch(requestUri.ToString(), project.__eTag, requestContent); return response.IsSuccessStatusCode; }