public void LoadMultipleTable(MultiTableLoadData data) { System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); serializer.MaxJsonLength = int.MaxValue; Socket socket = buildSocket(SocketResourcePath + "/multiple_load/"); socket.OnMessage += (sender, e) => { SaveInfo info = deserializeSaveInfo(e.Data); if (info != null) { if (LoadMultipleTableHandler != null) { System.Windows.Application.Current.Dispatcher.Invoke(() => LoadMultipleTableHandler(info, null)); } if (info.isEnd) { socket.Close(CloseStatusCode.Normal); } return; } TableSaveIssue issue = deserializeIssue(e.Data); if (issue != null) { System.Windows.Application.Current.Dispatcher.Invoke(() => { ModelModificationDialog dialog = new ModelModificationDialog(); dialog.Display(this, issue); dialog.ShowDialog(); issue = dialog.tableSaveIssue; string json = serializer.Serialize(issue); socket.Send(json); }); return; } logger.Debug("Recieve unreconized message : " + e.Data); }; socket.OnOpen += (sender, e) => { logger.Debug("Socket opened!"); }; socket.OnError += (sender, e) => { logger.Debug("Socket error : " + e.Message); }; socket.OnClose += (sender, e) => { logger.Debug("Socket closed : " + e.Reason); }; socket.Connect(); string text = serializer.Serialize(data); socket.Send(text); }
protected void OnUpload(object sender, RoutedEventArgs e) { List <string> selectedFiles = new List <string>(0); foreach (Object item in this.Step1.ExcelFilesGrid.SelectedItems) { string name = ((FileInfo)item).FullName; if (ApplicationManager.Instance.ApplcationConfiguration.IsMultiuser()) { string path = System.IO.Path.GetDirectoryName(name) + System.IO.Path.DirectorySeparatorChar; name = System.IO.Path.GetFileName(name); this.InputTableService.FileService.FileTransferService.MultipleUploadTable(name, path); } selectedFiles.Add(name); } int selectedTableOID = ((InputTableBrowserData)Step2.TableGrid.SelectedItem).oid; if (Step3.GroupField.Group == null) { MessageDisplayer.DisplayInfo("Group ", "The groupe value cannot be empty"); } if (Step3.GroupField.Group == null) { Step3.GroupField.Group = Step3.GroupField.GroupService.getDefaultGroup(); } int groupOid = Step3.GroupField.Group.oid.Value; DisplayStep(4); MultiTableLoadData data = new MultiTableLoadData(); data.templateOid = selectedTableOID; data.groupOid = groupOid; data.excelFiles = selectedFiles; InputTableService.LoadMultipleTableHandler += Update; InputTableService.LoadMultipleTable(data); }