public async Task <SubscriptionValidationResponse> Run(EventGridEvent[] eventGridEvents) { foreach (EventGridEvent eventGridEvent in eventGridEvents) { //JObject dataObject = eventGridEvent.Data as JObject; var test = eventGridEvent.EventType.ToLower() == EventTypeEnumFactory.SubscriptionValidationEvent.ToLower(); // Deserialize the event data into the appropriate type based on event type if (eventGridEvent.EventType.ToLower() == EventTypeEnumFactory.SubscriptionValidationEvent.ToLower()) { var json = JsonConvert.SerializeObject(eventGridEvent.Data); var obj = JsonConvert.DeserializeObject <SubscriptionValidationEventData>(json); var responseData = new SubscriptionValidationResponse { ValidationResponse = obj?.ValidationCode }; return(responseData); } await HandleEventAsync(MapperUtility.Map <EventGridEvent, BaseEvent>(eventGridEvent)); } await Task.CompletedTask; return(null); }
public async Task <HttpResponseMessage> SendAsync <TEvent, TEventType>(string topicEndpoint, string sasKey, List <TEvent> events) where TEvent : BaseEvent <TEventType> { return(await SendAsync(topicEndpoint, sasKey, MapperUtility.Map <List <TEvent>, List <EventGridEvent> >(events))); }