| // set buffer size |
| public const int BUFFER_SIZE = 4096 ; |
| |
| protected void Page_Load(object sender, EventArgs e) |
| { |
| } |
| protected void Button1_Click(object sender, EventArgs e) |
| { |
| // new instance of DataMAnager |
| DataManager dm = new DataManager(); |
| IGroup subscriberGroup = null ; |
| // get all groups |
| IList subscriberGroups = dm.GetGroups(""); |
| int i = 0; |
| // check whether the subscriber group exists. |
| while (subscriberGroup == null && i < subscriberGroups.Count) |
| { |
| // get the subscriber group value from the textbox |
| if (((IGroup)subscriberGroups[i]).GroupName == subscriberGroupTextBox.Text) |
| { |
| subscriberGroup = (IGroup)subscriberGroups[i]; |
| } |
| i++; |
| } |
| if (subscriberGroup != null) |
| { |
| // get the cvs file |
| HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(absoluteURLtoCSV.Text); |
| HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse(); |
| // read the file |
| MemoryStream memoryStream = null; |
| byte[] buffer = new byte[BUFFER_SIZE]; |
| Stream responseStream = webResponse.GetResponseStream(); |
| try |
| { |
| int readBytes; |
| memoryStream = new MemoryStream(); |
| while ((readBytes = responseStream.Read(buffer, 0, BUFFER_SIZE)) > 0) |
| { |
| memoryStream.Write(buffer, 0, readBytes); |
| } |
| string csvContents = |
| Encoding.UTF8.GetString(memoryStream.GetBuffer(), 0, (int)memoryStream.Length); |
| |
| string[] subscribersRows = csvContents.Split('\n'); |
| foreach (string subscriberRow in subscribersRows) |
| { |
| string subscriberInfoRow = subscriberRow.Trim(); |
| if (!string.IsNullOrEmpty(subscriberInfoRow)) |
| { |
| string[] columns = subscriberInfoRow.Split(','); |
| |
| string userEmail = columns[0].Trim(); |
| // create a new users here using CreateSubscriber method |
| ISubscriber subscriber = dm.CreateSubscriber(userEmail); |
// get the first name from the cvs file
subscriber.FirstName = columns[1].Trim();
// get the last name from the cvs file
|
| subscriber.LastName = columns[2].Trim(); |
| dm.SaveSubscriber(subscriber); |
| IGroupSubscriber grSubs = |
| dm.CreateGroupSubscriberRelation(subscriberGroup.GroupId, subscriber.SubscriberId); |
| dm.SaveGroupSubscribers(grSubs); |
| } |
| } |
| } |
| finally |
| { |
| if (memoryStream != null) |
| memoryStream.Close(); |
| } |
| } |
| else |
| { |
| Response.Write(string.Format("The subscriber group {0} does not exist!", subscriberGroupTextBox.Text)); |
| } |
| |
| } |