Click here to Skip to main content
15,881,803 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I am make two function in wcf service and call in silverlight using asynchronization method call one method after one method but before completion of first method silverlight execute the 2nd method. I want first method completely execute then second method call. Please help its urgent.
private GDOperations.GDDoneOperationsClient _gdDoneOperation;
  private ImageOperationsClient proxy = null;
 foreach (var file in _filesCollection)
            {
                clsImageTransactionEntity _clsImageEntity = new clsImageTransactionEntity();
                _clsImageEntity.ImageByte = GetFileData(file.OpenRead());
                _clsImageEntity.ImageExtension = file.Extension;
                _clsImageEntity.ImageName = file.Name;
                _clsImageEntity.ImageType = 2;
                _clsImageEntity.ImagePath = "~/CMSImages/FinalImages/" + lblSelectedBarcode.Content.ToString() + "/" + file.Name;
                _clsImageEntity.JabongBarcode = lblSelectedBarcode.Content.ToString();

               
                GDOperations.clsImageTransactionEntity _clsImageGDEntity = new GDOperations.clsImageTransactionEntity();
                _clsImageGDEntity.ImageExtension = file.Extension;
                _clsImageGDEntity.ImageName = file.Name;
                _clsImageGDEntity.ImageType = 2;
                _clsImageGDEntity.ImagePath = "~/CMSImages/FinalImages/" + lblSelectedBarcode.Content.ToString() + "/" + file.Name;
                _clsImageGDEntity.JabongBarcode = lblSelectedBarcode.Content.ToString();
                _clsImageGDEntity.RoleId = roleID;
                _clsImageGDEntity.TaskID = taskID;
                _clsImageGDEntity.UserID = UserId;
                _clsImageGDEntity.SystemIP = systemIP;
                _clsGdAllotment.clsImageTransactionEntity.Add(_clsImageGDEntity);
//----- first method calling-----                
proxy.UploadFinalImageCompleted += (s, e) =>
                {
                    if (e.Error == null)
                    {
                        
                    }     
                };
                proxy.UploadFinalImageAsync(_clsImageEntity);
                countfile = countfile + 1;
                pbUploadFiles.Value = countfile;
                
            }
            _clsGdAllotment.GdID = int.Parse(lblUserID.Content.ToString());
            _clsGdAllotment.JabongBarcode = lblSelectedBarcode.Content.ToString();
            _clsGdAllotment.TaskID = taskID;
//--- after for loop completion calling second method -----
            _gdDoneOperation.InsertGDDoneInformationCompleted += _gdDoneOperation_InsertGDDoneInformationCompleted;
            _gdDoneOperation.InsertGDDoneInformationAsync(_clsGdAllotment);

Thanks & Regards Ram Kumar
Posted
Updated 26-Nov-12 20:48pm
v3

1 solution

Call your 2nd method in the completion handler of the first. Ensure your first async callback returns successfully before calling the 2nd method.

/ravi
 
Share this answer
 
Comments
Ram Kumar(Webunitech) 27-Nov-12 5:32am    
please tell me how i do its urgent i have paste above code please
help me
Ravi Bhavnani 27-Nov-12 8:14am    
An example of doing this can be found at http://stackoverflow.com/questions/8257416/silverlight-asynchronous-operation-foreach-loop.

/ravi

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900