public IHttpActionResult GetProfile(string id) { try { var jsonData = _storageService.GetProfile(id); Profile profile = new Profile(); profile.Id = id; profile.Data = jsonData; return Ok(profile); } catch (FileNotFoundException) { return NotFound(); } }
/// <summary> /// Creates a new profile storage. /// </summary> /// <param name="key">Public key value</param> /// <param name="data">Data blob</param> /// <returns></returns> public string CreateProfile(Profile profile) { var profileId = Guid.NewGuid().ToString().Replace("-", ""); var profilePath = $"{AppDomain.CurrentDomain.BaseDirectory}/{RootPath}/{profileId}"; // Make sure there's a directory var dirPath = Path.GetDirectoryName(profilePath); if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } var profileJson = JsonConvert.SerializeObject(profile); File.WriteAllText(profilePath, profileJson); return profileId; }