Delete() public méthode

public Delete ( ) : FuelSDK.DeleteReturn
Résultat FuelSDK.DeleteReturn
        // ------------------------------------------------------------
        // Name: UpdateConvertedProspects
        // Abstract: Retrieve subscribers from a list
        // ------------------------------------------------------------
        public static Dictionary<string, string> UpdateConvertedProspects(Dictionary<string, string> dctSubscriberList, Dictionary<string, string> dctSubscriberKeys,
                                                                          List<string> alstrConvertedKey, List<string> alstrConvertedEmail, List<string> alstrConvertedSubscriberKey)
        {
            Dictionary<string, string> dctSubscribers = new Dictionary<string, string>();

            try
            {
                string strSubscriberKey = "";
                string strEmail = "";
                string strCustomerNumber = "";

                // Loop through each converted prospect
                foreach (KeyValuePair<string, string> entry in dctSubscriberList)
                {
                    // Data
                    DateTime dtmCreatedDate = DateTime.Now;

                    // Get customer number and email
                    strCustomerNumber = entry.Key;
                    strEmail = entry.Value;

                    // Get subscriber key based on that email
                    strSubscriberKey = dctSubscriberKeys[strEmail];

                    // Get subscriber dates
                    ET_Subscriber getSub = new ET_Subscriber();
                    getSub.AuthStub = m_etcTDClient;
                    getSub.Props = new string[] { "SubscriberKey", "EmailAddress", "Status", "CreatedDate" };
                    getSub.SearchFilter = new SimpleFilterPart() { Property = "SubscriberKey", SimpleOperator = SimpleOperators.equals, Value = new string[] { strSubscriberKey } };
                    GetReturn getResponse = getSub.Get();
                    Console.WriteLine("Get Status: " + getResponse.Status.ToString());
                    Console.WriteLine("Message: " + getResponse.Message.ToString());
                    Console.WriteLine("Code: " + getResponse.Code.ToString());
                    Console.WriteLine("Results Length: " + getResponse.Results.Length);

                    foreach (ET_Subscriber sub in getResponse.Results)
                    {
                        Console.WriteLine("--EmailAddress: " + sub.EmailAddress + " Status: " + sub.Status.ToString());
                        dtmCreatedDate = sub.CreatedDate;
                    }

                    // Create subscriber with same information but correct SubscriberKey
                    Console.WriteLine("\n Create Subscriber");
                    ET_Subscriber postSub = new ET_Subscriber();
                    postSub.AuthStub = m_etcTDClient;
                    postSub.EmailAddress = strEmail;
                    postSub.SubscriberKey = strCustomerNumber;
                    postSub.CreatedDate = dtmCreatedDate;
                    PostReturn postResponse = postSub.Post();
                    Console.WriteLine("Post Status: " + postResponse.Status.ToString());
                    Console.WriteLine("Message: " + postResponse.Message.ToString());
                    Console.WriteLine("Code: " + postResponse.Code.ToString());
                    Console.WriteLine("Results Length: " + postResponse.Results.Length);

                    // Add Subscriber to Newsletter and Reminders List
                    // Newsletter ListID: 2726; Reminders ListID: 2727  
                    FuelReturn hrAddSub = m_etcTDClient.AddSubscribersToList(strEmail, strCustomerNumber, new List<int>() { 2726 });
                    Console.WriteLine("Helper Status: " + hrAddSub.Status.ToString());
                    Console.WriteLine("Message: " + hrAddSub.Message.ToString());
                    Console.WriteLine("Code: " + hrAddSub.Code.ToString());

                    hrAddSub = m_etcTDClient.AddSubscribersToList(strEmail, strCustomerNumber, new List<int>() { 2727 });
                    Console.WriteLine("Helper Status: " + hrAddSub.Status.ToString());
                    Console.WriteLine("Message: " + hrAddSub.Message.ToString());
                    Console.WriteLine("Code: " + hrAddSub.Code.ToString());

                    // Delete old subscriber
                    ET_Subscriber deleteSub = new ET_Subscriber();
                    deleteSub.AuthStub = m_etcTDClient;
                    deleteSub.EmailAddress = strEmail;
                    deleteSub.SubscriberKey = strSubscriberKey;
                    DeleteReturn deleteResponse = deleteSub.Delete();
                    Console.WriteLine("Delete Status: " + deleteResponse.Status.ToString());
                    Console.WriteLine("Message: " + deleteResponse.Message.ToString());
                    Console.WriteLine("Code: " + deleteResponse.Code.ToString());
                    Console.WriteLine("Results Length: " + deleteResponse.Results.Length);

                    // Add to array list
                    alstrConvertedKey.Add(strCustomerNumber);
                    alstrConvertedEmail.Add(strEmail);
                    alstrConvertedSubscriberKey.Add(strSubscriberKey);
                }

            }
            catch (Exception excError)
            {
                // Display Error
                Console.WriteLine("Error: " + excError.ToString());
            }

            return dctSubscribers;
        }
        static void TestET_Subscriber()
        {
            ET_Client myclient = new ET_Client();

            Console.WriteLine("--- Testing Subscriber ---");
            string SubscriberTestEmail = "*****@*****.**";

            Console.WriteLine("\n Create Subscriber");
            ET_Subscriber postSub = new ET_Subscriber();
            postSub.AuthStub = myclient;
            postSub.EmailAddress = SubscriberTestEmail;
            postSub.Attributes = new FuelSDK.ET_ProfileAttribute[] {new ET_ProfileAttribute(){ Name= "First Name", Value = "ExactTarget Example"} };
            PostReturn postResponse = postSub.Post();
            Console.WriteLine("Post Status: " + postResponse.Status.ToString());
            Console.WriteLine("Message: " + postResponse.Message.ToString());
            Console.WriteLine("Code: " + postResponse.Code.ToString());
            Console.WriteLine("Results Length: " + postResponse.Results.Length);

            if (postResponse.Results.Length > 0)
            {
                Console.WriteLine("--NewID: " + postResponse.Results[0].NewID.ToString());
                foreach (ET_ProfileAttribute attr in ((ET_Subscriber)postResponse.Results[0].Object).Attributes) 
                {
                    Console.WriteLine("Name: " + attr.Name + ", Value: " + attr.Value);
                }
            }

            Console.WriteLine("\n Retrieve newly created Subscriber");
            ET_Subscriber getSub = new ET_Subscriber();
            getSub.AuthStub = myclient;
            getSub.Props = new string[] { "SubscriberKey", "EmailAddress", "Status" };
            getSub.SearchFilter = new SimpleFilterPart() { Property = "SubscriberKey", SimpleOperator = SimpleOperators.equals, Value = new string[] { SubscriberTestEmail } };
            GetReturn getResponse = getSub.Get();
            Console.WriteLine("Get Status: " + getResponse.Status.ToString());
            Console.WriteLine("Message: " + getResponse.Message.ToString());
            Console.WriteLine("Code: " + getResponse.Code.ToString());
            Console.WriteLine("Results Length: " + getResponse.Results.Length);

            foreach (ET_Subscriber sub in getResponse.Results) {
                Console.WriteLine("--EmailAddress: " + sub.EmailAddress + " Status: " + sub.Status.ToString());
            }


            Console.WriteLine("\n Update Subscriber");
            ET_Subscriber patchSub = new ET_Subscriber();
            patchSub.AuthStub = myclient;
            patchSub.EmailAddress = SubscriberTestEmail;
            patchSub.Status = SubscriberStatus.Unsubscribed;
            patchSub.Attributes = new FuelSDK.ET_ProfileAttribute[] { new ET_ProfileAttribute() { Name = "First Name", Value = "ExactTarget Example" } };
            PatchReturn pathResponse = patchSub.Patch();
            Console.WriteLine("Patch Status: " + pathResponse.Status.ToString());
            Console.WriteLine("Message: " + pathResponse.Message.ToString());
            Console.WriteLine("Code: " + pathResponse.Code.ToString());
            Console.WriteLine("Results Length: " + pathResponse.Results.Length);
            
            foreach (ResultDetail rd in pathResponse.Results){
                ET_Subscriber sub = (ET_Subscriber)rd.Object;
                Console.WriteLine("--EmailAddress: " + sub.EmailAddress + " Status: " + sub.Status.ToString());
            }

            Console.WriteLine("\n Retrieve Subscriber that should have status unsubscribed now");
            getResponse = getSub.Get();
            Console.WriteLine("Get Status: " + getResponse.Status.ToString());
            Console.WriteLine("Message: " + getResponse.Message.ToString());
            Console.WriteLine("Code: " + getResponse.Code.ToString());
            Console.WriteLine("Results Length: " + getResponse.Results.Length);

            foreach (ET_Subscriber sub in getResponse.Results)
            {
                Console.WriteLine("--EmailAddress: " + sub.EmailAddress + " Status: " + sub.Status.ToString());
            }

            Console.WriteLine("\n Delete Subscriber");
            ET_Subscriber deleteSub = new ET_Subscriber();
            deleteSub.AuthStub = myclient;
            deleteSub.EmailAddress = SubscriberTestEmail;
            DeleteReturn deleteResponse = deleteSub.Delete();
            Console.WriteLine("Delete Status: " + deleteResponse.Status.ToString());
            Console.WriteLine("Message: " + deleteResponse.Message.ToString());
            Console.WriteLine("Code: " + deleteResponse.Code.ToString());
            Console.WriteLine("Results Length: " + deleteResponse.Results.Length);

            Console.WriteLine("\n Retrieve Subscriber to confirm deletion");
            getResponse = getSub.Get();
            Console.WriteLine("Get Status: " + getResponse.Status.ToString());
            Console.WriteLine("Message: " + getResponse.Message.ToString());
            Console.WriteLine("Code: " + getResponse.Code.ToString());
            Console.WriteLine("Results Length: " + getResponse.Results.Length);

            foreach (ET_Subscriber sub in getResponse.Results)
            {
                Console.WriteLine("--EmailAddress: " + sub.EmailAddress + " Status: " + sub.Status.ToString());
            }           
        }
        // ------------------------------------------------------------
        // Name: Test_AddSubscriberToList
        // Abstract: Test -- Add subscriber to list
        // ------------------------------------------------------------
        public static void Test_AddSubscriberToList()
        {

            string NewListName = "CSharpSDKAddSubscriberToList";
            string SubscriberTestEmail = "*****@*****.**";
            String strSubscriberKey = "TestTestTest";

            Console.WriteLine("--- Testing AddSubscriberToList ---");

            Console.WriteLine("\n Create List");
            ET_List postList = new ET_List();
            postList.AuthStub = m_etcTDClient;
            postList.ListName = NewListName;

            // Create the new list in ET
            PostReturn prList = postList.Post();

            if (prList.Status && prList.Results.Length > 0)
            {
                // Get List ID
                int newListID = prList.Results[0].Object.ID;

                Console.WriteLine("\n Create Subscriber on List");
                FuelReturn hrAddSub = m_etcTDClient.AddSubscribersToList(SubscriberTestEmail, strSubscriberKey, new List<int>() { newListID });
                Console.WriteLine("Helper Status: " + hrAddSub.Status.ToString());
                Console.WriteLine("Message: " + hrAddSub.Message.ToString());
                Console.WriteLine("Code: " + hrAddSub.Code.ToString());

                Console.WriteLine("\n Retrieve all Subscribers on the List");
                ET_List_Subscriber getListSub = new ET_List_Subscriber();
                getListSub.AuthStub = m_etcTDClient;
                getListSub.Props = new string[] { "ObjectID", "SubscriberKey", "CreatedDate", "Client.ID", "Client.PartnerClientKey", "ListID", "Status" };
                getListSub.SearchFilter = new SimpleFilterPart() { Property = "ListID", SimpleOperator = SimpleOperators.equals, Value = new string[] { newListID.ToString() } };
                GetReturn getResponse = getListSub.Get();
                Console.WriteLine("Get Status: " + getResponse.Status.ToString());
                Console.WriteLine("Message: " + getResponse.Message.ToString());
                Console.WriteLine("Code: " + getResponse.Code.ToString());
                Console.WriteLine("Results Length: " + getResponse.Results.Length);
                foreach (ET_List_Subscriber ResultListSub in getResponse.Results)
                {
                    Console.WriteLine("--ListID: " + ResultListSub.ListID + ", SubscriberKey(EmailAddress): " + ResultListSub.SubscriberKey);
                }

                Console.WriteLine("\n Delete List");
                postList.ID = newListID;

                // Deletes the list
                DeleteReturn drList = postList.Delete();
                Console.WriteLine("Delete Status: " + drList.Status.ToString());

                // Delete the subscriber
                ET_Subscriber deleteSubscriber = new ET_Subscriber();
                deleteSubscriber.AuthStub = m_etcTDClient;
                deleteSubscriber.EmailAddress = SubscriberTestEmail;
                deleteSubscriber.SubscriberKey = strSubscriberKey;
                //Console.WriteLine("Subscriber's Customer Key: " + deleteSubscriber.CustomerKey.ToString() + "; Subscriber Key: " + deleteSubscriber.SubscriberKey);
                DeleteReturn deleteResponse = deleteSubscriber.Delete();
                Console.WriteLine("Delete Status: " + deleteResponse.Status.ToString());
                Console.WriteLine("Message: " + deleteResponse.Message.ToString());
                Console.WriteLine("Code: " + deleteResponse.Code.ToString());
                Console.WriteLine("Results Length: " + deleteResponse.Results.Length);
            }
        }