public async Task <List <string> > GetDistributionGroupAsync(MeredithDbContext dbContext) { if (!string.IsNullOrEmpty(DistributionGroups)) { return(DistributionGroups.Split(',').ToList()); } var emailRecipient = await dbContext.Recipients.FirstOrDefaultAsync(); var distributionGroup = emailRecipient?.DistributionGroup; if (distributionGroup is null) { throw new InvalidActionException( "Cannot find any distribution group. Please import your recipients first."); } return(new List <string> { distributionGroup }); }
public override string ToString() { return(String.Format("Date: {0} ", Date) + String.Format("Props: {0}, ", String.Join(", ", Props.Select(k => k.Key + ": " + k.Value))) + (Count.HasValue ? String.Format("Count: {0}, ", Count) : "") + (Sum.HasValue ? String.Format("Sum: {0}, ", Sum) : "") + (Min.HasValue ? String.Format("Min: {0}, ", Min) : "") + (Max.HasValue ? String.Format("Max: {0}, ", Max) : "") + (Avg.HasValue ? String.Format("Avg: {0}, ", Avg) : "") + (Percentiles != null ? String.Format("Percentiles: {0}, ", String.Join(", ", Percentiles.Select(p => p.Key + ": " + p.Value))) : "") + (DistributionGroups != null ? String.Format("DistributionGroups: {0}, ", String.Join(", ", DistributionGroups.Select(p => p.Key + ": " + p.Value))) : "")); }
/// <summary> /// Initializes client properties. /// </summary> private void Initialize() { Devices = new Devices(this); Notifications = new Notifications(this); OrgInvitations = new OrgInvitations(this); DistributionGroupInvitations = new DistributionGroupInvitations(this); AppInvitations = new AppInvitations(this); Sharedconnection = new Sharedconnection(this); DataSubjectRight = new DataSubjectRight(this); Users = new Users(this); Releases = new Releases(this); //Builds = new Builds(this); CodePushAcquisition = new CodePushAcquisition(this); DistibutionReleases = new DistibutionReleases(this); DistributionGroups = new DistributionGroups(this); Teams = new Teams(this); AzureSubscription = new AzureSubscription(this); Organization = new Organization(this); Apps = new Apps(this); Organizations = new Organizations(this); Invitations = new Invitations(this); NpsSurvey = new NpsSurvey(this); HappinessSurvey = new HappinessSurvey(this); Webhooks = new Webhooks(this); Crashes = new Crashes(this); Test = new Test(this); Symbols = new Symbols(this); SymbolUploads = new SymbolUploads(this); MissingSymbolGroups = new MissingSymbolGroups(this); Repositories = new Repositories(this); RepositoryConfigurations = new RepositoryConfigurations(this); Provisioning = new Provisioning(this); ReleaseUploads = new ReleaseUploads(this); Push = new Push(this); FileAssets = new FileAssets(this); ExportConfigurations = new ExportConfigurations(this); Errors = new Errors(this); StoreReleases = new StoreReleases(this); Stores = new Stores(this); App = new App(this); CodePushDeploymentRelease = new CodePushDeploymentRelease(this); DeploymentReleases = new DeploymentReleases(this); CodePushDeploymentReleases = new CodePushDeploymentReleases(this); CodePushDeployments = new CodePushDeployments(this); CodePushDeploymentMetrics = new CodePushDeploymentMetrics(this); CrashGroups = new CrashGroups(this); Commits = new Commits(this); BugTracker = new BugTracker(this); BranchConfigurations = new BranchConfigurations(this); AppleMapping = new AppleMapping(this); Analytics = new Analytics(this); ApiTokens = new ApiTokens(this); BaseUri = new System.Uri("https://api.appcenter.ms"); SerializationSettings = new JsonSerializerSettings { Formatting = Newtonsoft.Json.Formatting.Indented, DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; DeserializationSettings = new JsonSerializerSettings { DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <SharedConnectionRequest>("serviceType")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <SharedConnectionRequest>("serviceType")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <SharedConnectionResponse>("serviceType")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <SharedConnectionResponse>("serviceType")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <PrivateSharedConnectionResponse>("serviceType")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <PrivateSharedConnectionResponse>("serviceType")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <Log>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <Log>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <CustomProperty>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <CustomProperty>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <LogFlowLog>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <LogFlowLog>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <LogFlowCustomProperty>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <LogFlowCustomProperty>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <LogDiagnostics>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <LogDiagnostics>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <CustomPropertyDiagnostics>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <CustomPropertyDiagnostics>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ExportConfiguration>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ExportConfiguration>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <NotificationTarget>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <NotificationTarget>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <NotificationConfig>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <NotificationConfig>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <NotificationConfigResult>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <NotificationConfigResult>("type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <AlertingBugtrackerSettings>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <AlertingBugtrackerSettings>("type")); CustomInitialize(); }