Exportar (0) Imprimir
Expandir todo
Este tema aún no ha recibido ninguna valoración - Valorar este tema

Paso 7: Crear un tema y una suscripción

Actualizado: enero de 2014

Esta es la séptima de las nueve tareas necesarias para crear una aplicación básica de publicación/suscripción y de cola del estilo REST que usa Service Bus de Windows Azure.

El próximo paso es crear un método que usa el comando HTTP PUT de estilo REST para crear un tema. Posteriormente, debe escribir un método que crea una suscripción a ese tema.

Para crear un tema

  1. Pegue el siguiente código directamente debajo del código ReceiveAndDeleteMessage() que agregó en el paso 6:

    // Creates a Topic with the given topic name and the SWT token
    // Using an HTTP PUT request.
    private static string CreateTopic(string topicName)
    {
        var topicAddress = baseAddress + topicName;
        WebClient webClient = new WebClient();
        webClient.Headers[HttpRequestHeader.Authorization] = token;
    
        Console.WriteLine("\nCreating topic {0}", topicAddress);
        // Prepare the body of the create queue request
        var putData = @"<entry xmlns=""http://www.w3.org/2005/Atom"">
                                      <title type=""text"">" + topicName + @"</title>
                                      <content type=""application/xml"">
                                        <TopicDescription xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.microsoft.com/netservices/2010/10/servicebus/connect"" />
                                      </content>
                                    </entry>";
    
        byte[] response = webClient.UploadData(topicAddress, "PUT", Encoding.UTF8.GetBytes(putData));
        return Encoding.UTF8.GetString(response);
    }
    

Para crear una suscripción

  1. El código a continuación crea una suscripción en el tema que creó en la sección anterior. Agregue el siguiente código directamente debajo de la definición CreateTopic():

    private static string CreateSubscription(string topicName, string subscriptionName)
    {
        var subscriptionAddress = baseAddress + topicName + "/Subscriptions/" + subscriptionName;
        WebClient webClient = new WebClient();
        webClient.Headers[HttpRequestHeader.Authorization] = token;
    
        Console.WriteLine("\nCreating subscription {0}", subscriptionAddress);
        // Prepare the body of the create queue request
        var putData = @"<entry xmlns=""http://www.w3.org/2005/Atom"">
                                      <title type=""text"">" + subscriptionName + @"</title>
                                      <content type=""application/xml"">
                                        <SubscriptionDescription xmlns:i=""http://www.w3.org/2001/XMLSchema-instance"" xmlns=""http://schemas.microsoft.com/netservices/2010/10/servicebus/connect"" />
                                      </content>
                                    </entry>";
    
        byte[] response = webClient.UploadData(subscriptionAddress, "PUT", Encoding.UTF8.GetBytes(putData));
        return Encoding.UTF8.GetString(response);
    }
    

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft. Reservados todos los derechos.