public async Task<IHttpActionResult> Post(Translation translation, [ValueProvider(typeof(CultureValueProviderFactory))] string culture = "en-US")
		{
			if (!ModelState.IsValid)
			{
				return BadRequest(ModelState);
			}

			
			var term = new Term
			{
				Id = translation.Id,
				Key = translation.Key,
				DictionryId = translation.NamespaceId,
				Translations =
					new List<TermTranslation>
					{
						new TermTranslation {TermId = translation.Id, Culture = culture, Value = translation.Value}
					}
			};

			db.Terms.Add(term);
			await db.SaveChangesAsync();
			translation.Id = term.Id;
			return Created(translation);
		}
		public async Task<IHttpActionResult> Put([FromODataUri] int key, Translation translation, [ValueProvider(typeof(CultureValueProviderFactory))] string culture = "en-US")
		{
			if (!ModelState.IsValid)
			{
				return BadRequest(ModelState);
			}
			if (key != translation.Id)
			{
				return BadRequest();
			}
			var termTranslation = new TermTranslation {TermId = translation.Id, Culture = culture, Value = translation.Value};
			var term = new Term { Id = key, Key = translation.Key, DictionryId = translation.NamespaceId, Translations = new List<TermTranslation> {termTranslation}};
			db.Entry(termTranslation).State = EntityState.Modified;
			db.Entry(term).State = EntityState.Modified;
			try
			{
				await db.SaveChangesAsync();
			}
			catch (DbUpdateConcurrencyException)
			{
				if (!TranslationExists(key))
				{
					return NotFound();
				}
				else
				{
					throw;
				}
			}
			return Updated(translation);
		}