private async Task <Source> Create(Protocols.Common.Source source) { try { return(await _mongoDbSource.UpsertAsync(Builders <Source> .Filter.Eq(x => x.Type, source.Type)& Builders <Source> .Filter.Eq(x => x.BoardId, source.BoardId), source.ToModel())); } catch (MongoWriteException) { throw new DeveloperException(Code.ResultCode.UsingSourceId); } }
public static WebCrawler.Models.Source ToModel(this Protocols.Common.Source source) { return(new WebCrawler.Models.Source { Id = source.Id, BoardId = source.BoardId, Type = source.Type, Name = source.Name, PageMin = source.PageMin, PageMax = source.PageMax, Interval = source.Interval }); }