Criar seu primeiro aplicativo Do Microsoft Graph Data Connect
A Conexão de Dados do Microsoft Graph aumenta o modelo transacional do Microsoft Graph com uma maneira inteligente de acessar dados avançados em escala. Os dados abordam como os trabalhadores se comunicam, colaboram e gerenciam seu tempo em todos os aplicativos e serviços no Microsoft 365. Ideal para big data e aprendizado de máquina, A Conexão de Dados permite que você desenvolva aplicativos para análise, inteligência e otimização de processos de negócios, estendendo dados do Microsoft 365 para o Azure. Ao integrar desta forma, você poderá aproveitar o vasto conjunto de computação, armazenamento no Azure, mantendo a conformidade com os padrões do setor e mantendo seus dados seguros.

A Conexão de Dados do Microsoft Graph usa o Azure Data Factory para copiar dados do Microsoft 365 para o armazenamento do seu aplicativo em intervalos configuráveis. Ele também fornece um conjunto de ferramentas para simplificar a entrega desses dados para o Microsoft Azure, permitindo que você acesse as ferramentas de desenvolvimento e hospedagem mais aplicáveis disponíveis. A Conexão de Dados também concede um modelo de controle e consentimento mais granular: você pode gerenciar dados, ver quem está acessando e solicitar propriedades específicas de uma entidade. Isso aprimora o modelo do Microsoft Graph, que concede ou nega acesso a aplicativos a entidades inteiras.
Você pode usar o Data Connect para habilitar cenários de machine learning para sua organização. Nesses cenários, você pode criar aplicações que forneçam informações valiosas aos seus participantes, treinar modelos de aprendizado de máquina e até mesmo realizar previsões com base em grandes quantidades de dados adquiridos.
Introdução
Neste tutorial, você criará seu primeiro aplicativo Microsoft Graph Data Connect. Emocionante, certo? Também achamos isso! Para começar, você precisará configurar algumas coisas primeiro.
Pré-requisitos
Para concluir este laboratório, você precisará das seguintes assinaturas ou licenças.
Locação do Microsoft 365
- Se você não tiver um, receberá um (gratuitamente) ins inscrever-se no Programa para Desenvolvedores do Microsoft 365.
- Vários usuários do Microsoft 365 com emails enviados e recebidos.
- Acesso a pelo menos duas contas que atendem aos seguintes requisitos:
- Deve ter a Administrador global função atribuída.
- Deve ter acesso ao Administração Microsoft 365 Central.
Assinatura do Microsoft Azure
- Se você não tiver um, poderá obter um (gratuitamente) em nosso site do Azure.
- A conta usada para entrar deve ter Administrador global função atribuída a ela.
- A assinatura do Azure deve estar no mesmo locatário que o locatário do Microsoft 365, pois o Graph Data Connect só exportará dados para uma assinatura do Azure no mesmo locatário, não entre locatários.
- Seus locatários do Microsoft 365 e do Azure devem estar na mesma Microsoft Azure Active Directory locatário.
Verifique se você tem o Visual Studio instalado em seu computador de desenvolvimento.
Observação
As capturas de tela e os exemplos usados neste laboratório são de um locatário de teste do Microsoft 365 com email de exemplo de usuários de teste. Você pode usar seu próprio locatário do Microsoft 365 para executar as mesmas etapas. Nenhum dado é gravado no Microsoft 365. Uma cópia dos dados de email é extraída de todos os usuários em um locatário do Microsoft 365 e copiada para uma conta do Armazenamento de Blobs do Azure que você mantém o controle sobre quem tem acesso aos dados no Armazenamento de Blobs do Azure.
Configurar seu locatário do Microsoft 365 e habilitar o Microsoft Graph Data Connect
Antes de usar o Microsoft Graph Data Connect pela primeira vez, você precisa configurar seu locatário do Microsoft 365. Isso envolve ativar o serviço e configurar um grupo de segurança com permissões para aprovar solicitações de extração de dados.
Conceder aos Azure AD usuários a Administrador global função
Nesta etapa, você garantirá que dois usuários em seu locatário do Microsoft 365 tenham a função Administrador global habilitada.
Configurar o grupo aprovador de solicitação de consentimento do Microsoft Graph Data Connect
Nesta etapa, você configurará seu locatário do Microsoft 365 para habilitar o uso do Microsoft Graph Data Connect.
Abra um navegador e vá para o Administração Microsoft 365 Portal.
Na barra lateral de navegação, selecione Grupos Ativos.

Selecione o botão Adicionar um grupo.
Use o seguinte para criar o novo grupo de segurança habilitado para email e selecione o botão Adicionar.
- Tipo: segurança habilitada para email

- Nome: Aprovadores de Solicitação de Consentimento

- Prefixo de Email: consentrequestapprovers

Pode levar até uma hora até que o grupo recém-criado seja exibido na lista. Quando o grupo tiver sido criado, selecione-o.
Vá para a opção Grupos ativos novamente e pesquise o grupo que você acabou de criar.
Selecione o grupo e, na guia Membros , selecione Exibir tudo e gerenciar membros.
Adicione os dois usuários que você habilitou a Administrador global a esse novo grupo.
Habilitar o Microsoft Graph Data Connect em seu locatário do Microsoft 365
Nesta etapa, você habilitará o serviço Microsoft Graph Data Connect em seu locatário do Microsoft 365.
Enquanto você ainda estiver conectado ao portal do Administração Microsoft 365, selecione o item de menu Configurações > Organização.
Selecione o serviço Microsoft Graph Data Connect .

Marque a caixa de seleção que diz ativar ou desativar o Microsoft Graph Data Connect para toda a organização habilitar o Data Connect.

Insira aprovadores de solicitação de consentimento (ou o nome do grupo criado anteriormente) no grupo de usuários para tomar decisões de aprovação e selecione Salvar.
Configurar o registro de aplicativo do Azure Active Directory
Neste exercício, você criará, executará e aprovará um pipeline do Azure Data Factory para extrair dados do Microsoft 365 para um Blob de Armazenamento do Azure para processamento adicional.
Criar um registro Microsoft Azure Active Directory aplicativo
A primeira etapa é criar um aplicativo Azure AD que será usado como a entidade de segurança para executar o processo de extração de dados.
Abra um navegador e vá para o Portal do Azure.
Entre usando uma conta com direitos Administrador global seus locatários do Azure e do Microsoft 365.
Na barra lateral de navegação, selecione Azure Active Directory (Azure AD).
Na página Azure AD Visão geral, selecione Registros de aplicativo na seção Gerenciar do menu.
Selecione o botão Novo registro .

Use os valores a seguir para criar um novo aplicativo Azure AD e selecione Registrar.
- Nome: Transferência de Dados do Microsoft Graph Data Connect
- Tipos de conta com suporte: contas somente neste diretório organizacional.
- URI de redirecionamento: deixe os valores padrão.

Localize a ID do Aplicativo (cliente) e copie-a, pois você precisará dela posteriormente neste tutorial. Isso será chamado de ID da entidade de serviço.
Localize a ID do Diretório ( locatário) e copie-a, pois você precisará dela posteriormente neste tutorial. Isso será chamado de ID de locatário.
Na navegação da barra lateral, selecione Certificados e segredos em Gerenciar.
Selecione o botão Novo segredo do cliente. Defina a Descrição como qualquer nome, defina Expira como qualquer valor na lista suspensa e escolha Adicionar.

- Depois que o segredo do cliente for criado, salve o Valor em algum lugar seguro, pois ele não estará mais disponível posteriormente e você precisará criar um novo.
- Isso será referenciado como a chave de entidade de serviço.
Na barra lateral de navegação do aplicativo, selecione Proprietários.
Verifique se sua conta está listada como proprietário do aplicativo. Se ele não estiver listado como proprietário, adicione-o.

Configurar o recurso de Armazenamento do Azure
Nesta etapa, você criará uma conta de Armazenamento do Azure em que a conexão de dados do Microsoft Graph armazenará os dados extraídos do Microsoft 365 para processamento adicional.
Abra um navegador e vá para o Portal do Azure.
Entre usando uma conta com direitos Administrador global seus locatários do Azure e do Microsoft 365.
Na barra lateral de navegação, selecione Criar um recurso.
Localize o tipo de recurso da Conta de Armazenamento e use os valores a seguir para criar e, em seguida, selecione Examinar + criar.
- Assinatura: selecione sua assinatura do Azure
- Grupo de recursos: GraphDataConnect (ou selecione um grupo de recursos existente)
- Nome da conta de armazenamento: mgdcm365datastore
- Região: escolha uma região do Azure na mesma região que a região do Microsoft 365
- Desempenho: Padrão
- Redundância: GRS (armazenamento com redundância geográfica)
- Guia Avançado:
- Camada de acesso: frequente
Examine se as configurações correspondem às mostradas na etapa anterior e selecione Criar.
Depois que a conta de Armazenamento do Azure tiver sido criada, conceda ao aplicativo Azure AD criado anteriormente o acesso adequado a ela.
Selecione a conta de Armazenamento do Azure.
No menu da barra lateral, selecione Controle de acesso (IAM).
Selecione o botão Adicionar no bloco Adicionar uma atribuição de função.
Use os valores a seguir para localizar o aplicativo selecionado anteriormente para conceder a ele a função Colaborador de Dados do Blob de Armazenamento e, em seguida, selecione Salvar.
- Função: Colaborador de Dados do Blob de Armazenamento
- Atribuir acesso a: Usuário, grupo ou entidade de serviço
- Selecione: Transferência de dados de conexão de dados do Microsoft Graph (o nome do Azure AD aplicativo criado anteriormente)

Crie um novo contêiner na conta mgdcm365datastore do Armazenamento do Azure.
Selecione a conta mgdcm365datastore do Armazenamento do Azure.
No menu da barra lateral, selecione Contêineres na seção serviço Blob .
Selecione o botão +Contêiner na parte superior da página, use os valores a seguir e, em seguida, selecione Criar.
- Nome: m365mails
- Nível de acesso público: privado (sem acesso anônimo)

Configurar o recurso Azure Data Factory aplicativo
A próxima etapa é usar o Azure Data Factory para criar um pipeline para extrair os dados do Microsoft 365 para a conta de Armazenamento do Azure usando a conexão de dados do Microsoft Graph.
Criar um Azure Data Factory pipeline
Abra um navegador e vá para o Portal do Azure.
Entre usando uma conta com direitos Administrador global seus locatários do Azure e do Microsoft 365.
Na barra lateral de navegação, selecione Criar um recurso.
Localize o tipo de recurso do Data Factory e use os valores a seguir para criar e selecione Criar.
Assinatura: selecione sua assinatura do Azure
Grupo de recursos: GraphDataConnect
Região: escolha uma região do Azure na mesma região que a região do Microsoft 365
Nome: dfM365toBlobStorage
Versão: V2

Na guia configuração do Git , configure o Git ou selecione a opção Configurar o Git mais tarde.
Depois que o Azure Data Factory for criado, selecione o bloco Autor e Monitor para iniciar o Azure Data Factory de tela inteira.

Alterne da Visão Geral para a Experiência de Gerenciamento selecionando-a na navegação à esquerda.
Por padrão, o Azure Data Factory usará um runtime de integração que está resolvendo automaticamente a região. Como o Data Connect requer que sua origem e destino e o runtime de integração existam na mesma região do Microsoft 365, recomendamos que você crie um novo runtime de integração com uma região fixa.
Selecione Integration Runtimes > New.
Selecione Azure, Auto-Hospedado e Continue.
Selecione O Azure para o ambiente de rede e selecione Continuar.

Use os detalhes a seguir para concluir o formulário na tela final e, em seguida, selecione Criar.
- Nome: nome do runtime de integração
- Descrição: insira uma descrição
- Região: selecione a região que corresponde à sua região do Microsoft 365
- Configuração de rede virtual (versão prévia): desabilitada
Alterne da experiência Gerenciar para o Autor selecionando-a na navegação à esquerda.
Crie um pipeline selecionando o ícone de adição e, em seguida, o pipeline.

Arraste a atividade Copiar Dados da seção Mover e Transformar para a superfície de design.

Selecione a atividade no designer.
Selecione a guia Geral e dê a ela um nome e uma descrição.
- Nome: CopyFromM365toBlobStorage
- Descrição: uma descrição desejada.
No painel do editor de atividades abaixo do designer, selecione a guia Origem e, em seguida, selecione Novo.
Localize o conjunto Office 365, selecione-o e, em seguida, selecione o botão Continuar.

O designer atualizará a guia Origem com as configurações do conector do Microsoft 365.
Selecione a opção Abrir ao lado do campo Conjunto de dados de origem .
Nas configurações da tabela, selecione a guia Conexão e, em seguida, o botão Novo.
Na caixa de diálogo exibida Azure AD, insira a ID do Aplicativo e a ID do Segredo do aplicativo criadas anteriormente nos campos ID da entidade de serviço e chave da entidade de serviço, respectivamente, e selecione Criar.
Selecione o runtime de integração que você criou anteriormente na lista suspensa Conectar por meio do runtime de integração.

Depois de criar a conexão do Microsoft 365, para o campo Tabela, selecione BasicDataSet_v0. Message_v0.
Alterne do Office365Table para o Pipeline > Origem. Use os valores a seguir para o filtro Data.
- Nome da coluna: CreatedDateTime
- Hora de início (UTC): selecione uma data antes da data atual
- Hora de término (UTC): selecione a data atual
- Selecione Importar esquema na seção Colunas de saída.
Selecione a atividade Copiar dados na guia pipeline e, em seguida, selecione a guia Coletor.
- Selecione o botão Novo, selecione Armazenamento de Blobs do Azure e, em seguida, selecione o botão Continuar.
- Selecione Binário como o formato dos dados e, em seguida, selecione o botão Continuar.
- Dê ao conjunto de dados o nome M365JsonFile e crie um novo serviço vinculado se ele ainda não existir.
Na tabela, selecione a guia Conexão e selecione Novo.
Defina os seguintes valores na caixa de diálogo e selecione Concluir.
- Método de autenticação: entidade de serviço
- Assinatura do Azure: Selecionar tudo
- Nome da conta de armazenamento: mgdcm365datastore
- Essa é a conta de armazenamento criada anteriormente neste exercício.
- Locatário: insira a ID do seu locatário do Azure
- ID da entidade de serviço: insira a ID do Azure AD aplicativo criado anteriormente
- Chave da entidade de serviço: insira a chave com hash do Azure AD aplicativo criado anteriormente
Ao lado do campo Caminho do arquivo , selecione Procurar.
Selecione o nome do contêiner de armazenamento criado anteriormente.

Com o pipeline criado, selecione o botão Validar Tudo na parte superior do designer.
Depois de validar (e corrigir os problemas encontrados), selecione o botão Publicar Tudo na parte superior do designer.
Executar o Azure Data Factory Pipeline
Com o pipeline criado, agora é hora de executar.
Observação
Pode levar vários minutos para que a solicitação de consentimento apareça e não é incomum para todo o processo (iniciar, solicitar consentimento e depois de aprovar o consentimento concluindo a execução do pipeline) para levar mais de 40 minutos.
No designer Azure Data Factory, com o pipeline aberto, selecione Adicionar gatilho > Gatilho Agora.

Depois de iniciar o trabalho, no menu da barra lateral, selecione Monitor para exibir os trabalhos em execução atuais.
Na barra de navegação do lado esquerdo, localize a guia Execuções de pipeline e selecione-a. Selecione o pipeline na coluna Nome do pipeline para exibir as execuções de atividade. Esse pipeline será mostrado como Em andamento.

Depois que você estiver no modo de exibição Execuções de atividade, vá para a seção Execuções de atividade, que está localizada no lado inferior da página.
Passe o mouse sobre o nome da atividade e selecione a opção de alternâncias. Isso abrirá a guia Detalhes .

Na tela Detalhes , procure o status da atividade de pipeline, conforme realçado na imagem a seguir. Nesse caso, você pode ver que ele está em um estado de RequestingConsent.

Neste ponto, a execução da atividade é pausada internamente até que alguém aprove manualmente a solicitação de consentimento por meio do Centro de administração do Microsoft 365 ou por meio do PowerShell.
Monitorar solicitações de consentimento de dados com o Administração Microsoft 365 Center e o PowerShell
Um administrador do Microsoft 365 tem a capacidade de aprovar ou negar solicitações de consentimento. Isso pode ser feito por meio do Administração Microsoft 365 Center ou programaticamente por meio do PowerShell.
Aprovar solicitações de consentimento
Abra um navegador e vá para o Administração Microsoft 365 Portal.
Para aprovar ou negar solicitações de consentimento, vá para Acesso Privilegiado.
Selecione uma solicitação de acesso a dados pendente.
Na chamada solicitação de acesso a dados, selecione o botão Aprovar.

Verificar dados extraídos do Microsoft 365 para o Blob de Armazenamento do Azure
Abra um navegador e vá para o Portal do Azure.
Entre usando uma conta com direitos Administrador global seus locatários do Azure e do Microsoft 365.
Na navegação da barra lateral, selecione o item de menu Todos os recursos.
Na lista de recursos, selecione a conta de Armazenamento do Azure criada anteriormente neste tutorial.
No menu de navegação da barra lateral, selecione Blobs na folha da conta de Armazenamento do Azure .
Selecione o contêiner criado anteriormente neste tutorial que você configurou o pipeline Azure Data Factory como o coletor para os dados extraídos. Você deve ver os dados neste contêiner agora.

Criar seu ASP.NET web para processar os dados exportados
Nesta seção, criaremos seu primeiro aplicativo ASP.NET projeto para processar os dados do Microsoft Graph Data Connect que foram exportados.
Criar um novo ASP.NET projeto
Abra o Visual Studio e selecione Arquivo > Novo > Projeto.
Na caixa de diálogo Novo Projeto, faça o seguinte.
Pesquise ASP.NET Aplicativo Web na caixa de pesquisa e selecione a opção ASP.NET Aplicativo Web (.NET Framework).
Clique em Avançar.

Insira EmailMetrics para o nome do projeto.
Selecione .NET Framework 4.7.2 para a opção de estrutura.
Selecionar Criar.
Importante
Insira exatamente o mesmo nome para o Projeto do Visual Studio especificado nas instruções de início rápido. O nome do projeto Visual Studio torna-se parte do namespace no código. O código dentro dessas instruções depende do namespace correspondente ao nome do projeto Visual Studio especificado nessas instruções. Se você usar um nome de projeto diferente, o código não será compilado, a menos que você ajuste todos os namespaces para corresponder ao nome do projeto do Visual Studio inserido ao criar o projeto.
- Na nova caixa ASP.NET do projeto de Aplicativo Web , selecione MVC.
- Selecionar Criar.

Adicionar e configurar o Armazenamento do Azure como um Serviço Conectado
Na janela Gerenciador de Soluções ferramenta, clique com o botão direito do mouse no nó Serviços Conectados e selecione Adicionar Serviço Conectado.

Na caixa de diálogo Serviços Conectados, selecione o + sinal verde localizado no canto superior direito da caixa de diálogo.
Na caixa de diálogo Adicionar dependência , selecione Armazenamento do Azure e selecione Avançar.

Na caixa de diálogo Armazenamento do Azure , selecione a assinatura e a conta de armazenamento em que você exportou os dados no exercício anterior e selecione Avançar.

Forneça à conexão de Armazenamento do Azure um nome de AzureStorageConnectionString e selecione Avançar.
Selecione Concluir.

Criar uma nova classe de modelo que será usada para armazenar as métricas de email
Na janela Gerenciador de Soluções ferramenta, clique com o botão direito do mouse na pasta Modelos e selecione Adicionar > Classe.

Na caixa de diálogo Adicionar Novo Item , selecione Classe, defina o nome do arquivo como EmailMetric.cs e selecione Adicionar.
Adicione o código a seguir à classe EmailMetric que você acabou de criar.
public string Email; public double RecipientsToEmail;
Criar um novo controlador que calculará e exibirá os resultados
Clique com o botão direito do mouse na pasta Controladores e selecione Adicionar > Controlador.
Na caixa de diálogo Adicionar Scaffold , selecione Controlador MVC 5 – Vazio e selecione Adicionar.
Quando solicitado, nomeie o controlador EmailMetricsController e selecione OK.
Adicione as instruções using a seguir após as instruções using existentes na parte superior do arquivo que contém a classe EmailMetricsController .
using System.Collections.Generic; using System.Configuration; using System.IO; using System.Linq; using System.Threading.Tasks; using System.Web.Mvc; using Azure.Storage.Blobs; using Azure.Storage.Blobs.Models; using Newtonsoft.Json.Linq;Adicione o código a seguir à classe EmailMetricsController . Eles serão usados para se conectar à Conta de Armazenamento do Azure que contém os dados exportados.
private const string connectionStringName = "AzureStorageConnectionString"; private const string emailBlobName = "m365mails";Adicione o método a seguir à classe EmailMetricsController . Isso processará um Blob do Azure e atualizará uma coleção que representa as contas de email e quantos destinatários foram combinados em todos os emails encontrados para as contas extraídas.
private async Task ProcessBlobEmails(List<Models.EmailMetric> emailMetrics, BlobClient emailBlob) { using (var stream = new MemoryStream()) { var response = await emailBlob.DownloadToAsync(stream); var pos = stream.Seek(0, SeekOrigin.Begin); using (var reader = new StreamReader(stream)) { string line; while ((line = reader.ReadLine()) != null) { var jsonObj = JObject.Parse(line); // extract sender var sender = jsonObj.SelectToken("Sender.EmailAddress.Address")?.ToString(); // No sender - skip this one if (string.IsNullOrEmpty(sender)) continue; // extract and count up recipients var totalRecipients = 0; totalRecipients += jsonObj.SelectToken("ToRecipients")?.Children().Count() ?? 0; totalRecipients += jsonObj.SelectToken("CcRecipients")?.Children().Count() ?? 0; totalRecipients += jsonObj.SelectToken("BccRecipients")?.Children().Count() ?? 0; var emailMetric = new Models.EmailMetric(); emailMetric.Email = sender; emailMetric.RecipientsToEmail = totalRecipients; // if already have this sender... var existingMetric = emailMetrics.FirstOrDefault(metric => metric.Email == emailMetric.Email); if (existingMetric != null) { existingMetric.RecipientsToEmail += emailMetric.RecipientsToEmail; } else { emailMetrics.Add(emailMetric); } } } } }Adicione o método a seguir à classe EmailMetricsController . Isso enumerará todos os blobs no contêiner especificado da conta de Armazenamento do Azure
ProcessBlobEmails()especificado e enviará cada um para o método adicionado na última etapa.private async Task<List<Models.EmailMetric>> ProcessBlobFiles() { var emailMetrics = new List<Models.EmailMetric>(); var connectionString = ConfigurationManager.ConnectionStrings[connectionStringName]; // Connect to the storage account var containerClient = new BlobContainerClient(connectionString.ConnectionString, emailBlobName); foreach (var blob in containerClient.GetBlobs()) { if (blob.Properties.BlobType == BlobType.Block && // Don't process blobs in the metadata folder !blob.Name.StartsWith("metadata/")) { var blobClient = containerClient.GetBlobClient(blob.Name); await ProcessBlobEmails(emailMetrics, blobClient); } } return emailMetrics; }Adicione a ação a seguir ao EmailMetricsController que usará os métodos adicionados a essa classe para processar os emails e enviar os resultados para a exibição.
[HttpPost, ActionName("ShowMetrics")] [ValidateAntiForgeryToken] public async Task<ActionResult> ShowMetrics() { var emailMetrics = await ProcessBlobFiles(); return View(emailMetrics); }
Criar uma nova exibição para a ação de índice EmailMetrics
Na janela Gerenciador de Soluções ferramenta, clique com o botão direito do mouse na pasta Exibições > EmailMetrics e selecione Adicionar > Exibição.
Na caixa de diálogo Adicionar Novo Item Scaffolded , selecione Exibição do MVC 5 e, em seguida, selecione Adicionar.
Na caixa de diálogo Adicionar Exibição , defina o nome da exibição como Índice, deixe os controles de entrada restantes com seus valores padrão e selecione Adicionar.

Atualize a marcação nas novas Exibições > EmailMetrics > Index.cshtml para o seguinte. Isso adicionará um formulário com um único botão que enviará um HTTP POST para a ação do controlador personalizado adicionada na última etapa.
@{ ViewBag.Title = "Index"; } <h2>Email Metrics</h2>Esse aplicativo examinará os dados de email de emails extraídos para a conta Armazenamento de Blobs do Azure e exibirá o número total de destinatários de cada remetente.
@using (Html.BeginForm("ShowMetrics", "EmailMetrics", FormMethod.Post)) { @Html.AntiForgeryToken() <div> <button type="submit">View email metrics</button> </div> <div> <em>Please be patient as this can take a few moments to calculate depending on the size of the exported data...</em> </div> }
Criar um novo modo de exibição para a ação EmailMetrics ShowMetrics
Na janela Gerenciador de Soluções ferramenta, clique com o botão direito do mouse na pasta Exibições > EmailMetrics e selecione Adicionar > Exibição.
Na caixa de diálogo Adicionar Exibição , defina os valores a seguir e deixe os controles de entrada restantes com seus valores padrão e selecione Adicionar.
Nome da exibição: ShowMetrics
Modelo: Lista
Classe de modelo: EmailMetric (EmailMetric.Models)

Dica
Caso você não possa ver o modelo EmailMetric na caixa suspensa, crie a solução.
Atualize a marcação nas novas Exibições > EmailMetrics > ShowMetrics.cshtml para o seguinte. Isso exibirá os resultados dos cálculos.
@model IEnumerable<EmailMetrics.Models.EmailMetric> @{ ViewBag.Title = "ShowMetrics"; } <h2>Email Metrics</h2> <table class="table"> <tr> <th>Sender</th> <th>Number of Recipients</th> </tr> @foreach (var item in Model) { <tr> <td>@Html.DisplayFor(modelItem => item.Email)</td> <td>@Html.DisplayFor(modelItem => item.RecipientsToEmail)</td> </tr> } </table>
Atualizar a navegação para ter uma maneira de acessar o novo controlador
Na janela Gerenciador de Soluções ferramenta, localize e abra o arquivo Views > Shared > Layout.cshtml.
Substitua o conteúdo pelo código a seguir.
<!-- new code --> <li>@Html.ActionLink("Email Metrics", "Index", "EmailMetrics")</li>
Teste o aplicativo
No Visual Studio, selecione Depurar > Iniciar Depuração.
Quando o aplicativo for criado e carregado em uma nova janela do navegador, selecione o item Métricas de Email na barra de navegação superior.
Na página Métricas de Email , selecione o botão Exibir métricas de email .

Quando a página for carregada, você verá uma lista de endereços de email que foram encontrados entre todos os emails com uma soma de todos os destinatários enviados entre eles, conforme mostrado em um pequeno conjunto de exemplos em uma extração de email de teste na figura a seguir.

Parabéns!
Você concluiu o tutorial do Microsoft Graph Data Connect. Agora você tem um ponto de partida para experimentar ainda mais o Data Connect. Você pode começar verificando nossa documentação.
Tem algum problema com essa seção? Se tiver, envie seus comentários para que possamos melhorar esta seção.
Comentários
Enviar e exibir comentários de

