private int GetOrCreateHostIdFromUri(Uri uri) { if (uri == null) { throw new ArgumentNullException("uri"); } if (string.IsNullOrWhiteSpace(uri.Host)) { throw new ArgumentNullException("uri.Host"); } var rawHostEntity = _unitOfWork .RawHostRepository .RawHosts .SingleOrDefault(x => x.Data.ToLower() == uri.Host.ToLower()); if (rawHostEntity != null) { return(rawHostEntity.Id); } rawHostEntity = new RawHostEntity() { Data = uri.Host, Timestamp = DateTime.UtcNow }; _unitOfWork .RawHostRepository .Create(rawHostEntity); return(rawHostEntity.Id); }
public void Create(RawHostEntity rawHostEntity) { if (rawHostEntity == null) { throw new ArgumentNullException("rawHostEntity"); } _context.RawHosts.Add(rawHostEntity); _context.SaveChanges(); }