private void CheckStatusForRegistered(Object sender, ElapsedEventArgs e) { lock (_lock) { foreach (AsyncRequestState clientState in _clientStateList) { if (clientState.CurrentContext.Session != null) { ImageServiceClientManager manager = (ImageServiceClientManager)clientState.CurrentContext.Session["Manager"]; bool?status = manager.Status(); if (status.HasValue && status.Value == false) { clientState.CurrentContext.Response.Write(serializer.Serialize(new { isError = false, needToUpdate = true })); clientState.CompleteRequest(); } else if (!status.HasValue) { string errorMessage_ = manager.Notifier.GetLastError(); clientState.CurrentContext.Response.Write(serializer.Serialize(new { isError = true, errorMessage = errorMessage_ })); clientState.CompleteRequest(); _clientStateList.Clear(); break; } } } } }
protected void Page_Load(object sender, EventArgs e) { ImageServiceClientManager manager = (ImageServiceClientManager)Session["Manager"]; IEnumerable <ImageFileData> imagesFileData = (IEnumerable <ImageFileData>)Session["ImagesFileData"]; if (manager == null || imagesFileData == null) { return; } string fileName = Request.QueryString["fileName"]; byte[] imageData = null; ImageFileData imageFileData = imagesFileData.SingleOrDefault(p => p.FileName == fileName); if (imageFileData != null && imageFileData.ImageData != null) { imageData = imageFileData.ImageData; } else { imageData = manager.DownloadImage(fileName); } if (imageData != null) { Response.BinaryWrite(imageData); } }
public ImageServiceClientForm() { InitializeComponent(); IImageService channel = null; try { channelFactory = new ChannelFactory <IImageService>("streamingBinding"); channel = channelFactory.CreateChannel(); } catch (Exception) { MessageBox.Show("Can't create client channel!"); return; } IClientNotifier notyfier = new WindowsFormsNotifier(); manager = new ImageServiceClientManager(channel, notyfier, UpdateImagesInfoGrid); }
public MainWindow() { InitializeComponent(); model = (DataGridModel)imageFilesGrid.DataContext; IImageService channel = null; try { channelFactory = new ChannelFactory <IImageService>("streamingBinding"); channel = channelFactory.CreateChannel(); } catch (Exception) { MessageBox.Show("Can't create client channel!"); return; } IClientNotifier notyfier = new WPFNotifier(); manager = new ImageServiceClientManager(channel, notyfier, UpdateImagesInfoGrid); }
protected void ResetConnection_Click(object sender, EventArgs e) { ChannelFactory <IImageService> ChannelFactory; IClientNotifier Notyfier = new WebNotifier(); IImageService channel = null; try { ChannelFactory = new ChannelFactory <IImageService>("streamingBinding"); channel = ChannelFactory.CreateChannel(); } catch (Exception) { Notyfier.Error("Can't create client channel!"); return; } ImageServiceClientManager Manager = new ImageServiceClientManager(channel, Notyfier, null); IEnumerable <ImageFileData> ImagesFileData = Manager.GetAllImagesInfo(false); Session["Manager"] = Manager; Session["ImagesFileData"] = ImagesFileData; }