/// <summary> /// 发送消息 /// </summary> /// <param name="me"></param> public void SendMessage(MessageEntity me) { ClientSocket.Send(new byte[] { 0x00 }); ClientSocket.Send(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(me))); ClientSocket.Send(new byte[] { 0xff }); }
public void Remove(MessageEntity entiity) { Context.Message.Remove(entiity); }
private static void InitializeDatabase(CompanyNameProjectNameContext context) { try { context.Database.Migrate(); } catch (SqlException exception) when(exception.Number == 1801) { // exception.Number 1801 = The database already exists // It is preffered to avoid an excpetion but unfortunately Entity // Framework doesn't offer a method to do that. CanConnect() and // (context.Database.GetService<IDatabaseCreator>() as RelationalDatabaseCreator).Exists() // both return false even if the database already exists right after it is created. return; } System.Diagnostics.Debug.WriteLine("No Migrate Exception"); if (context?.Users != null && !context.Users.Any()) { // load test data into arrays rather than List<T> collections to optimize performance. var users = new UserEntity[] { new UserEntity { Email = "*****@*****.**", FirstName = "Bill", LastName = "Smith", IsActive = true, Guid = Guid.NewGuid(), CreatedBy = 1, CreatedOn = DateTime.Now, ModifiedBy = 1, ModifiedOn = DateTime.Now }, new UserEntity { Email = "*****@*****.**", FirstName = "Bob", LastName = "Jones", IsActive = true, Guid = Guid.NewGuid(), CreatedBy = 1, CreatedOn = DateTime.Now, ModifiedBy = 1, ModifiedOn = DateTime.Now }, }; foreach (var user in users) { context.Users.Add(user); } context.SaveChanges(); } if (context?.Messages != null && !context.Messages.Any()) { var messages = new MessageEntity[] { new MessageEntity { Text = "Hello, Bill!", ChannelId = 1, IsActive = true, Guid = Guid.NewGuid(), UserId = 1, CreatedBy = 1, CreatedOn = DateTime.Now, ModifiedBy = 1, ModifiedOn = DateTime.Now }, new MessageEntity { Text = "Hi, Bob!", ChannelId = 1, IsActive = true, Guid = Guid.NewGuid(), UserId = 2, CreatedBy = 1, CreatedOn = DateTime.Now, ModifiedBy = 1, ModifiedOn = DateTime.Now }, }; foreach (var message in messages) { context.Messages.Add(message); } context.SaveChanges(); } System.Diagnostics.Debug.WriteLine("InitializeDatabase Complete"); }
public async Task Get_Resources_After_Initialization() { var guid = Guid.NewGuid().ToString(); var connectionString = GetTestConnectionString(guid); var connection = new SqliteConnection(connectionString); var testNowProvider = new TestNowProvider(); var resourcesApiClient = GetResourceApiClient(connectionString, testNowProvider); try { DbInitializer.Initialize(connection, TestContextProvider.GetContext, new List <IEnumerable <object> > { new List <ResourceEntity> { new ResourceEntity { Id = 1, ResourceId = 1, Messages = new List <MessageEntity> { new MessageEntity { Id = 1, ResourceId = 1, Message = "Message1 in Resource1" }, new MessageEntity { Id = 2, ResourceId = 1, Message = "Message2 in Resource1" } } }, new ResourceEntity { Id = 2, ResourceId = 2, Messages = new List <MessageEntity> { new MessageEntity { Id = 3, ResourceId = 2, Message = "Message3 in Resource2" }, new MessageEntity { Id = 4, ResourceId = 2, Message = "Message4 in Resource2" } } } } } ); var messages = await resourcesApiClient.GetAllMessagesAsync(); var resources = await resourcesApiClient.GetAllResourcesAsync(); var message5 = new MessageEntity { ResourceId = 2, Message = "Message5 in Resource2" }; await resourcesApiClient.AddMessageAsync(message5); var messages2 = await resourcesApiClient.GetAllMessagesAsync(); var resources2 = await resourcesApiClient.GetAllResourcesAsync(); var resourceId2 = resources2.FirstOrDefault(r => r.ResourceId == 2); var resource3 = new ResourceEntity { ResourceId = 3 }; await resourcesApiClient.AddResourceAsync(resource3); var resources3 = await resourcesApiClient.GetAllResourcesAsync(); Assert.AreEqual(4, messages.Count); Assert.AreEqual(5, messages2.Count); Assert.AreEqual(2, resources.Count); Assert.AreEqual(3, resourceId2?.Messages?.Count); Assert.AreEqual(3, resources3.Count); } finally { connection.Close(); } }
public async Task <IEnumerable <MessageEntity> > AddAndGetAsync(MessageEntity newMessage) { await _messages.InsertOneAsync(newMessage); return((await _messages.FindAsync(x => x.ThreadId == newMessage.ThreadId, OrderByTimeFindOptions)).ToEnumerable()); }
private void ucWorkResultPopUp_T50_Load(object sender, EventArgs e) { try { _pMessageEntity = new MessageEntity(); DataTable dtMessage = new MessageBusiness().MessageValue_Info(_pLANGUAGE_TYPE); if (dtMessage != null) { _pMessageEntity.MSG_SEARCH = dtMessage.Rows[0]["MSG_SEARCH"].ToString(); _pMessageEntity.MSG_SEARCH_EMPT = dtMessage.Rows[0]["MSG_SEARCH_EMPT"].ToString(); _pMessageEntity.MSG_SAVE_QUESTION = dtMessage.Rows[0]["MSG_SAVE_QUESTION"].ToString(); _pMessageEntity.MSG_SAVE = dtMessage.Rows[0]["MSG_SAVE"].ToString(); _pMessageEntity.MSG_SAVE_ERROR = dtMessage.Rows[0]["MSG_SAVE_ERROR"].ToString(); _pMessageEntity.MSG_DELETE_QUESTION = dtMessage.Rows[0]["MSG_DELETE_QUESTION"].ToString(); _pMessageEntity.MSG_DELETE = dtMessage.Rows[0]["MSG_DELETE"].ToString(); _pMessageEntity.MSG_DELETE_ERROR = dtMessage.Rows[0]["MSG_DELETE_ERROR"].ToString(); _pMessageEntity.MSG_DELETE_COMPLETE = dtMessage.Rows[0]["MSG_DELETE_COMPLETE"].ToString(); _pMessageEntity.MSG_INPUT_DATA = dtMessage.Rows[0]["MSG_INPUT_DATA"].ToString(); _pMessageEntity.MSG_INPUT_DATA_ERROR = dtMessage.Rows[0]["MSG_INPUT_DATA_ERROR"].ToString(); _pMessageEntity.MSG_WORKING = dtMessage.Rows[0]["MSG_WORKING"].ToString(); _pMessageEntity.MSG_RESET_QUESTION = dtMessage.Rows[0]["MSG_RESET_QUESTION"].ToString(); _pMessageEntity.MSG_EXIT_QUESTION = dtMessage.Rows[0]["MSG_EXIT_QUESTION"].ToString(); _pMessageEntity.MSG_SELECT = dtMessage.Rows[0]["MSG_SELECT"].ToString(); //추가 _pMessageEntity.MSG_PLZ_CONNECT_FTP = dtMessage.Rows[0]["MSG_PLZ_CONNECT_FTP"].ToString(); _pMessageEntity.MSG_AGAIN_INPUT_DATA = dtMessage.Rows[0]["MSG_AGAIN_INPUT_DATA"].ToString(); _pMessageEntity.MSG_DOWNLOAD_COMPLETE = dtMessage.Rows[0]["MSG_DOWNLOAD_COMPLETE"].ToString(); _pMessageEntity.MSG_SEARCH_EMPT_DETAIL = dtMessage.Rows[0]["MSG_SEARCH_EMPT_DETAIL"].ToString(); _pMessageEntity.MSG_SPLITQTY_LARGE_MORE = dtMessage.Rows[0]["MSG_SPLITQTY_LARGE_MORE"].ToString(); _pMessageEntity.MSG_DELETE_ERROR_NO_DATA = dtMessage.Rows[0]["MSG_DELETE_ERROR_NO_DATA"].ToString(); _pMessageEntity.MSG_ORDERQTY_LARGE_THAN_0 = dtMessage.Rows[0]["MSG_ORDERQTY_LARGE_THAN_0"].ToString(); _pMessageEntity.MSG_PLAN_LARGE_THAN_ORDER = dtMessage.Rows[0]["MSG_PLAN_LARGE_THAN_ORDER"].ToString(); _pMessageEntity.MSG_DELETE_ERROR_CONNECT_FTP = dtMessage.Rows[0]["MSG_DELETE_ERROR_CONNECT_FTP"].ToString(); _pMessageEntity.MSG_INPUT_LESS_THAN_NOTOUTQTY = dtMessage.Rows[0]["MSG_INPUT_LESS_THAN_NOTOUTQTY"].ToString(); _pMessageEntity.MSG_LOAD_DATA = dtMessage.Rows[0]["MSG_LOAD_DATA"].ToString(); _pMessageEntity.MSG_NEW_REG_GUBN = dtMessage.Rows[0]["MSG_NEW_REG_GUBN"].ToString(); _pMessageEntity.MSG_INPUT_NUMERIC = dtMessage.Rows[0]["MSG_INPUT_NUMERIC"].ToString(); _pMessageEntity.MSG_NO_SELETED_ITEM = dtMessage.Rows[0]["MSG_NO_SELETED_ITEM"].ToString(); _pMessageEntity.MSG_EXIST_COMPANY_ID = dtMessage.Rows[0]["MSG_EXIST_COMPANY_ID"].ToString(); _pMessageEntity.MSG_NOT_DELETE_DATA_IN = dtMessage.Rows[0]["MSG_NOT_DELETE_DATA_IN"].ToString(); _pMessageEntity.MSG_NOT_MODIFY_DATA_IN = dtMessage.Rows[0]["MSG_NOT_MODIFY_DATA_IN"].ToString(); _pMessageEntity.MSG_SELECT_NEWREG_SAVE = dtMessage.Rows[0]["MSG_SELECT_NEWREG_SAVE"].ToString(); _pMessageEntity.MSG_INPUT_LARGER_THAN_0 = dtMessage.Rows[0]["MSG_INPUT_LARGER_THAN_0"].ToString(); _pMessageEntity.MSG_NOT_DELETE_DATA_OUT = dtMessage.Rows[0]["MSG_NOT_DELETE_DATA_OUT"].ToString(); _pMessageEntity.MSG_NOT_MODIFY_DATA_OUT = dtMessage.Rows[0]["MSG_NOT_MODIFY_DATA_OUT"].ToString(); _pMessageEntity.MSG_CANCLE_NEWREG_MODIFY = dtMessage.Rows[0]["MSG_CANCLE_NEWREG_MODIFY"].ToString(); _pMessageEntity.MSG_NO_SELETED_ITEM_OR_NO_SAVE = dtMessage.Rows[0]["MSG_NO_SELETED_ITEM_OR_NO_SAVE"].ToString(); _pMessageEntity.MSG_NO_INPUT_LAGER_THAN_NOTINQTY = dtMessage.Rows[0]["MSG_NO_INPUT_LAGER_THAN_NOTINQTY"].ToString(); _pMessageEntity.MSG_REG_DATA = dtMessage.Rows[0]["MSG_REG_DATA"].ToString(); _pMessageEntity.MSG_ADD_FAVORITE_ITEM = dtMessage.Rows[0]["MSG_ADD_FAVORITE_ITEM"].ToString(); _pMessageEntity.MSG_CHECK_SEARCH_DATE = dtMessage.Rows[0]["MSG_CHECK_SEARCH_DATE"].ToString(); _pMessageEntity.MSG_NOT_DISPLAY_ERROR = dtMessage.Rows[0]["MSG_NOT_DISPLAY_ERROR"].ToString(); _pMessageEntity.MSG_NO_EXIST_INPUT_DATA = dtMessage.Rows[0]["MSG_NO_EXIST_INPUT_DATA"].ToString(); _pMessageEntity.MSG_NOT_DISPLAY_NOT_SAVE = dtMessage.Rows[0]["MSG_NOT_DISPLAY_NOT_SAVE"].ToString(); _pMessageEntity.MSG_CHECK_VALID_ITEM = dtMessage.Rows[0]["MSG_CHECK_VALID_ITEM"].ToString(); _pMessageEntity.MSG_DELETE_FAVORITE_ITEM = dtMessage.Rows[0]["MSG_DELETE_FAVORITE_ITEM"].ToString(); _pMessageEntity.MSG_NOT_EXIST_PRINTING_EXCEL = dtMessage.Rows[0]["MSG_NOT_EXIST_PRINTING_EXCEL"].ToString(); _pMessageEntity.MSG_SELECT_DOWNLOAD_TEMPLETE = dtMessage.Rows[0]["MSG_SELECT_DOWNLOAD_TEMPLETE"].ToString(); _pMessageEntity.MSG_RESET_COMPLETE = dtMessage.Rows[0]["MSG_RESET_COMPLETE"].ToString(); } _pucWorkResultPopUp_T50_Entity = new ucWorkResultPopUp_T50_Entity(); _pucWorkResultPopUp_T50_Entity.CORP_CODE = _pCORP_CODE; _pucWorkResultPopUp_T50_Entity.USER_CODE = _pUSER_CODE; _pucWorkResultPopUp_T50_Entity.LANGUAGE_TYPE = _pLANGUAGE_TYPE; qWORK_ORDERID = _pARRAY_CODE[0].ToString(); qPART_CODE = _pARRAY_CODE[1].ToString(); qPART_NAME = _pARRAY_CODE[2].ToString(); qPROCESS_CODE = _pARRAY_CODE[3].ToString(); qWORK_ORDERSEQ = _pARRAY_CODE[4].ToString(); qorder_qty = Convert.ToDecimal(_pARRAY_CODE[5].ToString()); qok_qty = Convert.ToDecimal(_pARRAY_CODE[6].ToString()); qng_qty = Convert.ToDecimal(_pARRAY_CODE[7].ToString()); //qWORK_ORDERSEQ = _pARRAY_CODE[5].ToString(); InitializeSetting(); } catch (ExceptionManager pExceptionManager) { CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager.TargetSite.ToString())); } finally { DevExpress.Utils.AppearanceObject.DefaultFont = fntPARENT_FONT;//화면에 모든 항목 폰트 재설정 } }
public async void Execute() { while (true) { MessageEntity message = null; do { message = await queueProvider.DequeueAsync <MessageEntity>("experttouser"); if (message != null) { var questionFromStillInterested = await tableStorageProvider.RetrievePartitionFromTableAsync <StillInterestedEntity>("stillinterested", message.Question); var users = await tableStorageProvider.RetrieveTableAsync <UserEntity>("users"); if (questionFromStillInterested.Any()) { foreach (var question in questionFromStillInterested) { var user = users.FirstOrDefault(x => x.UserId == question.UserId); if (user != null) { var conversationReference = JsonConvert.DeserializeObject <ConversationReference>(user.ConversationReference); var connector = new ConnectorClient(new Uri(conversationReference.ServiceUrl)); MicrosoftAppCredentials.TrustServiceUrl(conversationReference.ServiceUrl, DateTime.MaxValue); var messageActivity = Activity.CreateMessageActivity(); if (!question.ReceivedAnswer) { question.ReceivedAnswer = true; if (string.Compare(message.OriginalAnswer, message.ExpertAnswer, StringComparison.InvariantCultureIgnoreCase) == 0) { messageActivity.Text = string.Format(messageProvider.GetMessage("ReceivedOriginalAnswer"), message.Question, message.ExpertAnswer); } else { messageActivity.Text = string.Format(messageProvider.GetMessage("ReceivedAnswer"), message.Question, message.ExpertAnswer); } } else if (user.Notifications) { messageActivity.Text = string.Format(messageProvider.GetMessage("ReceivedAnswerUpdate"), message.Question, message.ExpertAnswer); } else { //Notifications are off. We clean the entry await tableStorageProvider.DeleteFromTableAsync("stillinterested", new StillInterestedEntity[] { question }); return; } messageActivity.Conversation = new ConversationAccount(id: conversationReference.Conversation.Id); messageActivity.Recipient = new ChannelAccount(id: conversationReference.User.Id, name: conversationReference.User.Name); messageActivity.From = new ChannelAccount(id: conversationReference.Bot.Id, name: conversationReference.Bot.Name); messageActivity.ChannelId = conversationReference.ChannelId; try { await connector.Conversations.SendToConversationAsync((Activity)messageActivity); await tableStorageProvider.SendToTableAsync("stillinterested", question); } catch (Exception e) { await eventProvider.SendEventAsync(new TechnicalErrorEvent() { Exception = JsonConvert.SerializeObject(e), ChannelId = conversationReference.ChannelId, ConversationId = conversationReference.Conversation.Id, }); continue; } } } } } } while (message != null); Thread.Sleep(10000); } }
public static void AddNotified(JSONObject json) { json = json["notifications"]; Main.user.messages = json.Count; for (int i = 0; i < json.Count; i++) { MessageEntity temp = new MessageEntity(); temp.id = JSONObjectToInt(json[i]["id"]); temp.sid = JSONObjectToString(json[i]["sid"]); temp.item = JSONObjectToInt(json[i]["item"]); temp.type = JSONObjectToInt(json[i]["type"]); temp.text = JSONObjectToString(json[i]["text"]); messageEntities.Add(temp); } onStartInitializeSuccess(3); }
public virtual void CreateMessage(MessageContext context, string id, SagaEntity sagaentity, MessageEntity messageentity) { }
public static int GetFinish(this MessageEntity entity) { return(entity.Offset + entity.Length); }
/// <summary> /// 批量保存本地事件 /// </summary> /// <param name="ontology">本体</param> /// <param name="commands"></param> public ProcessResult SaveCommands(OntologyDescriptor ontology, MessageEntity[] commands) { if (ontology == null) { return new ProcessResult(new ArgumentNullException("ontology", @"ontology参数为null")); } if (commands == null) { return new ProcessResult(new ArgumentNullException("commands")); } foreach (var command in commands) { if (command == null) { return new ProcessResult(new ArgumentNullException("command", "命令数组中有null")); } else if (!ontology.Ontology.Code.Equals(command.Ontology, StringComparison.OrdinalIgnoreCase)) { return new ProcessResult(new ArgumentNullException("command.Ontology", "同一命令数组中的命令必须在相同本体下")); } } ProcessResult r = ProcessResult.Ok; // 存放异常信息 StringBuilder sb = new StringBuilder(); int l = sb.Length; // 按照命令类型分组,不同类型的命令可能存储在不同的数据库表 var gs = commands.GroupBy(c => c.CommandType); foreach (var g in gs) { // 本组命令类型所对应的数据库表 string tableId = string.Format("[{0}][{1}]", ontology.Ontology.MessageSchemaName, GetTableName(g.Key)); DbTable dbTable; if (!this.GetCommandDb(ontology).TryGetDbTable(tableId, out dbTable)) { r = new ProcessResult(new AnycmdException("意外的数据库表标识" + tableId)); } // 当前命令表模式克隆得到的新表 var dt = this.GetCommandDb(ontology).NewTable(dbTable); foreach (var command in g) { if (command.CommandType == MessageTypeKind.Invalid || command.CommandType == MessageTypeKind.AnyCommand) { r = new ProcessResult(false, Status.InvalidArgument, "Invalid和AnyCommand类型命令不能持久化"); } else if (string.IsNullOrEmpty(command.Verb.Code)) { r = new ProcessResult(false, Status.InvalidArgument, "Verb为空或null不能持久化"); } else if (string.IsNullOrEmpty(command.MessageId) || command.MessageId.Length > 50) { r = new ProcessResult(false, Status.InvalidArgument, "MessageID为空或null或者长度大于50字符不能持久化"); } else if (string.IsNullOrEmpty(command.LocalEntityId)) { r = new ProcessResult(false, Status.InvalidArgument, "LocalEntityID为空或null不能持久化"); } else if (command.DataTuple.IdItems.IsEmpty) { r = new ProcessResult(false, Status.InvalidArgument, "当前命令的信息标识为空则不能持久化"); } else if (!command.TimeStamp.IsValid()) { r = new ProcessResult(false, Status.InvalidArgument, "TimeStamp非法则不能持久化"); } else if (string.IsNullOrEmpty(command.Ontology)) { r = new ProcessResult(false, Status.InvalidArgument, "Ontology为空或null不能持久化"); } else if (string.IsNullOrEmpty(command.ClientId)) { r = new ProcessResult(false, Status.InvalidArgument, "ClientID为空或null不能持久化"); } if (r.IsSuccess) { // 将当前命令转化DataRow,一个命令对应一行 var row = command.ToDataRow(dt); int ll = sb.Length; // 检测每一列对应的值是否超出了数据库定义的长度 for (int i = 0; i < dt.Columns.Count; i++) { var dbCol = dt.Columns[i]; if (dbCol.MaxLength != -1) { if (row[i].ToString().Length > dbCol.MaxLength) { if (sb.Length != ll) { sb.Append(";"); } sb.Append(tableId).Append("表:"); sb.Append(dbCol.ColumnName + "超过最大长度,最长" + dbCol.MaxLength.ToString()); } } } if (sb.Length == ll) { // 如果不是哑命令。哑命令是不能爆炸的。 if (!command.IsDumb) { dt.Rows.Add(row); } } } else { sb.Append(r.Description); } } this.GetCommandDb(ontology).WriteToServer(dt); } if (sb.Length != l) { r = new ProcessResult(new AnycmdException(sb.ToString())); } else { r = ProcessResult.Ok; } if (r.Exception != null) { ontology.Host.LoggingService.Error(r.Exception); } return r; }
/// <summary> /// 保存命令事件 /// </summary> /// <param name="ontology"></param> /// <param name="command"></param> public ProcessResult SaveCommand(OntologyDescriptor ontology, MessageEntity command) { if (ontology == null) { return new ProcessResult(new ArgumentNullException("ontology", "ontology参数为null")); } if (command == null) { return new ProcessResult(new ArgumentNullException("command")); } return this.SaveCommands(ontology, new MessageEntity[] { command }); }
public override void ExecuteCommand(EasyClientBase session, PackageInfo packageInfo) { GetOfflineMessageListPackage package = packageInfo as GetOfflineMessageListPackage; List <DB.messageDB> lst = new List <DB.messageDB>(); if (packageInfo.code == 0) { //离线消息入库 if (package != null) { package.RECVLog(); string log = Util.Helpers.CodeTimer.Time("ReceiveOffLineMessage", 1, () => { lst = Util.Helpers.Async.Run(async() => await DAL.DALMessageHelper.ReceiveOffLineMessage(package)); if (lst != null) { var noticemsgs_del = lst.Where(m => m.noticeId != 0 && m.msgType == nameof(SDKProperty.MessageType.deletegroupnotice)); var noticemsgs_add = lst.Where(m => m.noticeId != 0 && m.msgType == nameof(SDKProperty.MessageType.addgroupnotice)); foreach (var item in noticemsgs_add) { if (noticemsgs_del.Any(m => m.noticeId == item.noticeId)) { item.optionRecord += (int)SDKProperty.MessageState.cancel; } } foreach (var item in lst) { var isgroup = item.roomType == 1 ? true : false; IList <MessageEntity> msglst = new List <MessageEntity>(); // if (offlineMessage.context.TryAdd((item.roomId, isgroup), msglst)) if (offlineMessage.context.TryAdd(new Tuple <int, bool>(item.roomId, isgroup), msglst)) { MessageEntity messageEntity = new MessageEntity() { db = item }; msglst.Add(messageEntity); } else { // if (offlineMessage.context.TryGetValue((item.roomId, isgroup), out msglst)) if (offlineMessage.context.TryGetValue(new Tuple <int, bool>(item.roomId, isgroup), out msglst)) { MessageEntity messageEntity = new MessageEntity() { db = item }; var target = msglst.FirstOrDefault(m => m.MsgId == item.msgId); if (target == null) { msglst.Add(messageEntity); } else { msglst.Remove(target); msglst.Add(messageEntity); } } } } // SDKClient.Instance.OnOffLineMessageEventHandle(offlineMessage); } }); logger.Info(log); } if (package.data.count == 1000)//继续发送请求 { GetOfflineMessageListPackage p = new GetOfflineMessageListPackage(); p.data = new GetOfflineMessageListPackage.Data(); p.from = SDKClient.Instance.property.CurrentAccount.userID.ToString(); p.id = package.id; p.data.count = package.data.count; p.data.time = package.data.time; ThreadPool.QueueUserWorkItem(m => { // SDKClient.Instance.GetOfflineMessageList(p); }); //p.Send(session); PushOfflineMessage(package, lst); //logger.Info("离线消息msg=>ui: " + package.id); } else { Task.Run(() => { try { PushOfflineMessage(package, lst); using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) { BinaryFormatter binaryFormatter = new BinaryFormatter(); binaryFormatter.Serialize(ms, offlineMessage); ms.Position = 0; object temp = binaryFormatter.Deserialize(ms); SDKClient.Instance.OnOffLineMessageEventHandle((OfflineMessageContext)temp); } offlineMessage.context.Clear(); logger.Info("离线消息msg=>ui: " + package.id); } catch (Exception ex) { logger.Error($"PushOfflineMessage 处理出错 error:{ex.Message}; source : {package.ToString()}"); } System.Threading.Interlocked.CompareExchange(ref SDKClient.Instance.property.CanHandleMsg, 2, 1); logger.Info("CanHandleMsg 值修改为:2"); //foreach (var item in SDKClient.Instance.property.PackageCache) //{ // SDKClient.Instance.OnNewDataRecv(item); //} //发送离线消息已收确认请求 GetOfflineMessageListPackage p = new GetOfflineMessageListPackage(); p.data = new GetOfflineMessageListPackage.Data(); p.from = SDKClient.Instance.property.CurrentAccount.userID.ToString(); p.id = package.id; p.data.count = 0; p.data.time = package.data.time; ThreadPool.QueueUserWorkItem(m => { // SDKClient.Instance.GetOfflineMessageList(p,false); logger.Info("OfflineMessageList 发送离线消息全部已收确认"); }); }); } } base.ExecuteCommand(session, packageInfo); }
public int UpdateEntity(object entity, ConnectionFactory.DBConnNames dBConnName, out MessageEntity messageEntity) { using (var conn = ConnectionFactory.GetDBConn(dBConnName)) { var rows = 0; var updateSql = DapperExtentions.MakeUpdateSql(entity); if (string.IsNullOrEmpty(updateSql)) { messageEntity = MessageEntityTool.GetMessage(ErrorType.SqlError, "请检查实体类"); return(0); } try { rows = conn.Execute(updateSql, entity); messageEntity = MessageEntityTool.GetMessage(rows); } catch (Exception e) { messageEntity = MessageEntityTool.GetMessage(ErrorType.SqlError, e.Message); } return(rows); } }
public void AppliesActiveEntitiesToComponentTree() { var eventWithMessage = new EventEntity(Level2A.Path, DefaultStartTime, ComponentStatus.Degraded); var messageForEventWithMessage = new MessageEntity(eventWithMessage, DefaultStartTime, "", MessageType.Manual); var degradedIncidentGroupForEventWithMessage = new IncidentGroupEntity(eventWithMessage, Level3AFrom2A.Path, ComponentStatus.Degraded, DefaultStartTime); var downIncidentGroupForEventWithMessage = new IncidentGroupEntity(eventWithMessage, Level3AFrom2A.Path, ComponentStatus.Down, DefaultStartTime); var upIncidentGroupForEventWithMessage = new IncidentGroupEntity(eventWithMessage, Level3AFrom2A.Path, ComponentStatus.Up, DefaultStartTime); var inactiveIncidentGroupForEventWithMessage = new IncidentGroupEntity(eventWithMessage, Level3BFrom2A.Path, ComponentStatus.Degraded, DefaultStartTime, DefaultStartTime); var missingPathIncidentGroupForEventWithMessage = new IncidentGroupEntity(eventWithMessage, "missingPath", ComponentStatus.Degraded, DefaultStartTime); var eventWithoutMessage = new EventEntity(Level2B.Path, DefaultStartTime, ComponentStatus.Degraded); var incidentGroupForEventWithoutMessage = new IncidentGroupEntity(eventWithoutMessage, Level3AFrom2B.Path, ComponentStatus.Degraded, DefaultStartTime); var inactiveEventWithMessage = new EventEntity(Level2B.Path, DefaultStartTime + TimeSpan.FromDays(1), ComponentStatus.Degraded, DefaultStartTime + TimeSpan.FromDays(2)); var messageForInactiveEventWithMessage = new MessageEntity(inactiveEventWithMessage, DefaultStartTime + TimeSpan.FromDays(1), "", MessageType.Manual); var incidentGroupForInactiveEventWithMessage = new IncidentGroupEntity(inactiveEventWithMessage, Level3BFrom2B.Path, ComponentStatus.Degraded, DefaultStartTime + TimeSpan.FromDays(1)); Table.SetupQuery( messageForEventWithMessage, messageForInactiveEventWithMessage); Table.SetupQuery( degradedIncidentGroupForEventWithMessage, downIncidentGroupForEventWithMessage, upIncidentGroupForEventWithMessage, inactiveIncidentGroupForEventWithMessage, missingPathIncidentGroupForEventWithMessage, incidentGroupForEventWithoutMessage, incidentGroupForInactiveEventWithMessage); Table.SetupQuery( eventWithMessage, eventWithoutMessage, inactiveEventWithMessage); var result = Exporter.Export(); // Status of events with messages are applied. AssertComponentStatus(ComponentStatus.Degraded, Level2A, eventWithMessage); // Most severe status affecting same component is applied. AssertComponentStatus( ComponentStatus.Down, Level3AFrom2A, degradedIncidentGroupForEventWithMessage, downIncidentGroupForEventWithMessage, upIncidentGroupForEventWithMessage); // Status of inactive incident groups are not applied. AssertComponentStatus(ComponentStatus.Up, Level3BFrom2A, inactiveIncidentGroupForEventWithMessage); // Status of events without messages are not applied. // Status of inactive events with messages are not applied. AssertComponentStatus(ComponentStatus.Up, Level2B, eventWithoutMessage, inactiveEventWithMessage); // Status of incident groups for events without messages are not applied. AssertComponentStatus(ComponentStatus.Up, Level3AFrom2B, incidentGroupForEventWithoutMessage); // Status of incident groups for inactive events with messages are not applied. AssertComponentStatus(ComponentStatus.Up, Level3BFrom2B, incidentGroupForInactiveEventWithMessage); }
public virtual void CreateMessage(MessageContext context, MessageEntity messageentity) { }
/// <summary> /// 断开服务端Socket /// </summary> /// <param name="sender"></param> /// <param name="me"></param> private void Ci_DisConnection(object sender, MessageEntity me) { callback.DisConnection(sender as ClientSocketInstance, me); }
public async Task <MessageEntity> SearchOrCreateGroup(long company, long user, long creator, int type, MessageEntity message) { if (_group.Include(g => g.UsersList).Where(g => g.UsersList.Any(u => u.UserId == creator) && g.UsersList.Any(u => u.UserId == user)).Any(g => g.Category == type && g.CompanyId == company) == false) { var group = new GroupEntity() { Category = type, CompanyId = company, UserId = user }; var party = new List <PartyEntity> { new PartyEntity() { Group = @group, UserId = user }, new PartyEntity() { Group = @group, UserId = creator } }; group.UsersList = party; _group.Add(group); context.SaveChanges(); if (group.Id > 0) { message.GroupId = group.Id; _Message.Add(message); context.SaveChanges(); return(_Message .Include(m => m.Group) .ThenInclude(g => g.UsersList) .Include(m => m.User) .First(m => m.Id == message.Id)); } else { return(null); } } else { var groupList = _group.Include(g => g.UsersList) .Where(g => g.UsersList.Any(u => u.UserId == user) && g.UsersList.Any(u => u.UserId == creator)) .FirstOrDefault(g => g.Category == type && g.CompanyId == company ); if (groupList != null) { message.GroupId = groupList.Id; _Message.Add(message); context.SaveChanges(); return(_Message .Include(m => m.Group) .ThenInclude(g => g.UsersList) .Include(m => m.User) .First(m => m.Id == message.Id)); } else { return(null); } } }
/// <summary> /// 板上组装。提供给子类实现的模板方法。 /// </summary> /// <param name="command"></param> protected virtual void PopulateCore(MessageEntity command) { }
public async Task Create(MessageEntity entity) { _Message.Add(entity); await context.SaveChangesAsync(); }
public void SendMessage(MessageEntity message, bool isCommit) { }
public MessagePageViewModel() { _messageEntity = new MessageEntity(); _messageGroupCollection = new ObservableCollection <MessageGroupItem>(); }
public async Task Create(MessageEntity sms) { await db.Sms.AddAsync(sms); await db.SaveChangesAsync(); }
/// <summary> /// Deletes the user with the ID passed in. Will reset all posts made by the user to the userid 0. /// </summary> /// <param name="userID">The user ID.</param> /// <remarks>Can't delete user 0</remarks> /// <returns>true if succeeded, false otherwise</returns> public static bool DeleteUser(int userID) { if (userID == 0) { // can't delete the Anonymous coward user. return(false); } UserEntity toDelete = UserGuiHelper.GetUser(userID); if (toDelete == null) { // user doesn't exist return(false); } // all actions have to take place in a transaction. Transaction trans = new Transaction(IsolationLevel.ReadCommitted, "DeleteUser"); try { // we'll first update all PostedByUserId fields of all messages which are posted by the user to delete. MessageEntity messageUpdater = new MessageEntity(); messageUpdater.PostedByUserID = 0; // reset to AC. MessageCollection messages = new MessageCollection(); trans.Add(messages); // add to the transaction // update all entities directly in the DB, which match the following filter and update them with the new values set in messageUpdater. messages.UpdateMulti(messageUpdater, (MessageFields.PostedByUserID == userID)); // set the startuser of threads started by this user to 0 ThreadEntity threadUpdater = new ThreadEntity(); threadUpdater.StartedByUserID = 0; ThreadCollection threads = new ThreadCollection(); trans.Add(threads); threads.UpdateMulti(threadUpdater, (ThreadFields.StartedByUserID == userID)); // remove the user from the UserRoles set, as the user shouldn't be in any roles. RoleUserCollection roleUsersDeleter = new RoleUserCollection(); trans.Add(roleUsersDeleter); // delete all entities directly from the DB which match the following filter. roleUsersDeleter.DeleteMulti(RoleUserFields.UserID == userID); // delete all bookmarks of user BookmarkCollection bookmarkDeleter = new BookmarkCollection(); trans.Add(bookmarkDeleter); // delete all bookmarks for this user directly from the DB using the following filter. bookmarkDeleter.DeleteMulti(BookmarkFields.UserID == userID); // delete all audit data AuditDataCoreCollection auditDataDeleter = new AuditDataCoreCollection(); // first fetch it, then delete all entities from the collection, as the audit data is in an inheritance hierarchy of TargetPerEntity which can't // be deleted directly from the db. trans.Add(auditDataDeleter); auditDataDeleter.GetMulti(AuditDataCoreFields.UserID == userID); auditDataDeleter.DeleteMulti(); // set IP bans set by this user to userid 0 IPBanEntity ipbanUpdater = new IPBanEntity(); ipbanUpdater.IPBanSetByUserID = 0; IPBanCollection ipBans = new IPBanCollection(); trans.Add(ipBans); ipBans.UpdateMulti(ipbanUpdater, (IPBanFields.IPBanSetByUserID == userID)); // delete threadsubscriptions ThreadSubscriptionCollection threadSubscriptionsDeleter = new ThreadSubscriptionCollection(); trans.Add(threadSubscriptionsDeleter); threadSubscriptionsDeleter.DeleteMulti(ThreadSubscriptionFields.UserID == userID); // remove supportqueuethread claims SupportQueueThreadCollection supportQueueThreads = new SupportQueueThreadCollection(); trans.Add(supportQueueThreads); supportQueueThreads.DeleteMulti(SupportQueueThreadFields.ClaimedByUserID == userID); // set all placed in queue references to userid 0, so the threads stay in the queues. SupportQueueThreadEntity supportQueueThreadUpdater = new SupportQueueThreadEntity(); supportQueueThreadUpdater.PlacedInQueueByUserID = 0; supportQueueThreads.UpdateMulti(supportQueueThreadUpdater, (SupportQueueThreadFields.PlacedInQueueByUserID == userID)); // now delete the actual user entity trans.Add(toDelete); toDelete.Delete(); // all done trans.Commit(); return(true); } catch { trans.Rollback(); throw; } finally { trans.Dispose(); } }
public async Task <MessageEntity> UpdateAsync(MessageEntity message) { return(await _messages.FindOneAndReplaceAsync <MessageEntity>(x => x.Id == message.Id, message, DefaultFindAndReplaceOption)); }
public int Create(MessageEntity messageEntity) { return(Execute(@"insert into messages(content, sender_id, recipient_id) values(:content,:sender_id,:recipient_id)", messageEntity)); }
public static void ClassInitialize(TestContext context) { #region _privateChat _privateChat = new Chat { Id = 170181775, FirstName = "Coffee", LastName = "Jelly", Username = "******", Type = ChatType.Private }; #endregion #region _groupChat _groupChat = new Chat { Id = -200694086, Title = "testgrp", Type = ChatType.Group, AllMembersAreAdministrators = true }; #endregion #region _superGroupChat _superGroupChat = new Chat { Id = -1001076966401, Title = "testgrp", Type = ChatType.Supergroup, }; #endregion #region _date _date = DateTimeOffset.FromUnixTimeSeconds(Convert.ToInt64(1490868721)).UtcDateTime; #endregion #region _user _user = new User { Id = 170181775, FirstName = "Coffee", LastName = "Jelly", Username = "******" }; #endregion #region _user1 _user1 = new User { Id = 208070915, FirstName = "testuser1", Username = "******" }; #endregion #region _user2 _user2 = new User { Id = 208070916, FirstName = "testuser2", Username = "******" }; #endregion #region _users _users = new List <User> { _user1, _user2 }; #endregion #region _urlEntity _urlEntity = new MessageEntity { Type = MessageEntityType.Url, Offset = 0, Length = 24 }; #endregion #region _entities _entities = new List <MessageEntity> { _urlEntity, }; #endregion #region _thumb _thumb = new PhotoSize { FileId = "AAQCABOLx4ENAAT8_8aMR6FJKZeyAAIC", FileSize = 5056, Width = 128, Height = 128 }; #endregion #region _photoSize1 _photoSize1 = new PhotoSize { FileId = "AgADAgADvqcxG5h36EqtRLHi7G4IpthVtw0ABHZHxxRGwQQWJp4BAAEC", FileSize = 1104, Width = 90, Height = 66 }; #endregion #region _photoSize2 _photoSize2 = new PhotoSize { FileId = "AgADAgADvqcxG5h36EqtRLHi7G4IpthVtw0ABJcP22BBjoQSJ54BAAEC", FileSize = 8848, Width = 270, Height = 199 }; #endregion #region _photoSize3 _photoSize3 = new PhotoSize { FileId = "AgADAgADeKgxG4_EJAqofB1cykfvRrNJtw0ABAObNR5xowTDVqABAAEC", FileSize = 99685, Width = 640, Height = 640 }; #endregion #region _config _config = new ComparisonConfig { CompareChildren = true, CompareFields = false, CompareReadOnly = true, ComparePrivateFields = false, ComparePrivateProperties = false, CompareProperties = true, MaxDifferences = 50 }; #endregion #region _audio _audio = new Audio { Duration = 195, MimeType = "TestMimeType", Title = "TestTitle", Performer = "TestPerformer", FileId = "CQADAgADEgADmHfoSvnwZ3irGpuOAg", FileSize = 3125626 }; #endregion #region _document _document = new Document { FileName = "Test.PDF", MimeType = "application/pdf", FileId = "BQADAgADEwADmHfoSqJcnJwfHNTDAg", FileSize = 2972868 }; #endregion #region _sticker _sticker = new Sticker { Width = 512, Height = 512, Emoji = "TestEmoji", Thumb = _thumb, FileId = "CAADAgADdQEAAsxUSQlymelYJqPjNwI", FileSize = 31896 }; #endregion #region _photo _photo = new List <PhotoSize> { _photoSize1, _photoSize2 }; #endregion #region _video _video = new Video { Duration = 7, Width = 1280, Height = 720, Thumb = _thumb, FileId = "BAADAgADFwADmHfoSinMsvYz1GJpAg", FileSize = 827579 }; #endregion #region _voice _voice = new Voice { Duration = 3, MimeType = "audio/ogg", FileId = "AwADAgADFQADmHfoSt8RIvvK5Z47Ag", FileSize = 18020 }; #endregion #region _contact _contact = new Contact { PhoneNumber = "777777", FirstName = "tiny", LastName = "beast", UserId = 220793091 }; #endregion #region _location _location = new Location { Latitude = 53.901112F, Longitude = 27.562325F }; #endregion #region _newChatPhoto _newChatPhoto = new List <PhotoSize> { _photoSize1, _photoSize2, _photoSize3 }; #endregion #region _replyTo _replyTo = new VoiceMessage { From = _user, Voice = _voice }; AttachGeneralProperties(_replyTo); #endregion #region _pinnedMessage _pinnedMessage = new TextMessage { From = _user, Text = "testpinned" }; AttachGeneralProperties3(_pinnedMessage); #endregion #region _videoNote _videoNote = new VideoNote { //Duration = 7, //Length = //Thumb = _thumb, //FileId = "BAADAgADFwADmHfoSinMsvYz1GJpAg", //FileSize = 827579 }; #endregion }
public ActionResult Edit(long messageId, ComposeMessage model) { var message = new MessageEntity(messageId); if (message.IsNew) { throw new HttpException(404, SharedRes.Error.NotFound_Message); } if (ModelState.IsValid) { var transaction = new Transaction(IsolationLevel.ReadCommitted, "edit message"); try { // if the device list has missing devices create a new message and remove the intersecting devices from the old message // only if the message has been delivered, otherwise remove the device message normally below if (message.DeviceMessages.Where(x => x.DeliveryTime != null).Select(x => x.Device).Except(model.Tos).Any()) { // remove the devices from the old message that are included in the new model foreach (var device in message.DeviceMessages.Select(x => x.Device).Intersect(model.Tos)) { var deviceMessage = new DeviceMessageEntity(device.DeviceId, message.MessageId); transaction.Add(deviceMessage); deviceMessage.Delete(); } // create a new message for the model leaving the old message Already Delivered message = new MessageEntity { MessageType = model.Type, Title = model.Title, Body = model.Body, CreateTime = DateTime.UtcNow, StartTime = model.StartTime.ToUniversalTime(), EndTime = model.EndTime.HasValue ? model.EndTime.Value.ToUniversalTime() : new DateTime?() }; transaction.Add(message); } else { // devices are only added to the message, none removed, so update the existing message message.MessageType = model.Type; message.Title = model.Title; message.Body = model.Body; message.CreateTime = DateTime.UtcNow; message.StartTime = model.StartTime.ToUniversalTime(); message.EndTime = model.EndTime.HasValue ? model.EndTime.Value.ToUniversalTime() : new DateTime?(); transaction.Add(message); } message.Save(); // remove any removed device IDs, // if messages have already been delivered a new message will be created above and nothing more will be done here foreach (var device in message.DeviceMessages.Select(x => x.Device).Except(model.Tos)) { var deviceMessage = new DeviceMessageEntity(device.DeviceId, message.MessageId); transaction.Add(deviceMessage); deviceMessage.Delete(); } // add the devicemessage entities for all the tos foreach (var device in model.Tos) { var dm = new DeviceMessageEntity(device.DeviceId, message.MessageId) { DeviceId = device.DeviceId, MessageId = message.MessageId }; transaction.Add(dm); dm.Save(); } transaction.Commit(); return(new EmptyResult()); } catch (Exception ex) { transaction.Rollback(); throw new HttpException(417, Message.AddError); } finally { transaction.Dispose(); } } Response.StatusCode = 417; Response.TrySkipIisCustomErrors = true; return(PartialView(model)); }
public void Add(MessageEntity entity) { Context.Message.Add(entity); }
public async Task UpdateStarboardColumn(MessageEntity message) { ModixContext.Messages.Update(message); await ModixContext.SaveChangesAsync(); }
private void ucShipmentInfoPopup_Load(object sender, EventArgs e) { try { _pMessageEntity = new MessageEntity(); DataTable dtMessage = new MessageBusiness().MessageValue_Info(_pLANGUAGE_TYPE); if (dtMessage != null) { _pMessageEntity.MSG_SEARCH = dtMessage.Rows[0]["MSG_SEARCH"].ToString(); _pMessageEntity.MSG_SEARCH_EMPT = dtMessage.Rows[0]["MSG_SEARCH_EMPT"].ToString(); _pMessageEntity.MSG_SAVE_QUESTION = dtMessage.Rows[0]["MSG_SAVE_QUESTION"].ToString(); _pMessageEntity.MSG_SAVE = dtMessage.Rows[0]["MSG_SAVE"].ToString(); _pMessageEntity.MSG_SAVE_ERROR = dtMessage.Rows[0]["MSG_SAVE_ERROR"].ToString(); _pMessageEntity.MSG_DELETE_QUESTION = dtMessage.Rows[0]["MSG_DELETE_QUESTION"].ToString(); _pMessageEntity.MSG_DELETE = dtMessage.Rows[0]["MSG_DELETE"].ToString(); _pMessageEntity.MSG_DELETE_ERROR = dtMessage.Rows[0]["MSG_DELETE_ERROR"].ToString(); _pMessageEntity.MSG_DELETE_COMPLETE = dtMessage.Rows[0]["MSG_DELETE_COMPLETE"].ToString(); _pMessageEntity.MSG_INPUT_DATA = dtMessage.Rows[0]["MSG_INPUT_DATA"].ToString(); _pMessageEntity.MSG_INPUT_DATA_ERROR = dtMessage.Rows[0]["MSG_INPUT_DATA_ERROR"].ToString(); _pMessageEntity.MSG_WORKING = dtMessage.Rows[0]["MSG_WORKING"].ToString(); _pMessageEntity.MSG_RESET_QUESTION = dtMessage.Rows[0]["MSG_RESET_QUESTION"].ToString(); _pMessageEntity.MSG_EXIT_QUESTION = dtMessage.Rows[0]["MSG_EXIT_QUESTION"].ToString(); _pMessageEntity.MSG_SELECT = dtMessage.Rows[0]["MSG_SELECT"].ToString(); //추가 _pMessageEntity.MSG_PLZ_CONNECT_FTP = dtMessage.Rows[0]["MSG_PLZ_CONNECT_FTP"].ToString(); _pMessageEntity.MSG_AGAIN_INPUT_DATA = dtMessage.Rows[0]["MSG_AGAIN_INPUT_DATA"].ToString(); _pMessageEntity.MSG_DOWNLOAD_COMPLETE = dtMessage.Rows[0]["MSG_DOWNLOAD_COMPLETE"].ToString(); _pMessageEntity.MSG_SEARCH_EMPT_DETAIL = dtMessage.Rows[0]["MSG_SEARCH_EMPT_DETAIL"].ToString(); _pMessageEntity.MSG_SPLITQTY_LARGE_MORE = dtMessage.Rows[0]["MSG_SPLITQTY_LARGE_MORE"].ToString(); _pMessageEntity.MSG_DELETE_ERROR_NO_DATA = dtMessage.Rows[0]["MSG_DELETE_ERROR_NO_DATA"].ToString(); _pMessageEntity.MSG_ORDERQTY_LARGE_THAN_0 = dtMessage.Rows[0]["MSG_ORDERQTY_LARGE_THAN_0"].ToString(); _pMessageEntity.MSG_PLAN_LARGE_THAN_ORDER = dtMessage.Rows[0]["MSG_PLAN_LARGE_THAN_ORDER"].ToString(); _pMessageEntity.MSG_DELETE_ERROR_CONNECT_FTP = dtMessage.Rows[0]["MSG_DELETE_ERROR_CONNECT_FTP"].ToString(); _pMessageEntity.MSG_INPUT_LESS_THAN_NOTOUTQTY = dtMessage.Rows[0]["MSG_INPUT_LESS_THAN_NOTOUTQTY"].ToString(); _pMessageEntity.MSG_LOAD_DATA = dtMessage.Rows[0]["MSG_LOAD_DATA"].ToString(); _pMessageEntity.MSG_NEW_REG_GUBN = dtMessage.Rows[0]["MSG_NEW_REG_GUBN"].ToString(); _pMessageEntity.MSG_INPUT_NUMERIC = dtMessage.Rows[0]["MSG_INPUT_NUMERIC"].ToString(); _pMessageEntity.MSG_NO_SELETED_ITEM = dtMessage.Rows[0]["MSG_NO_SELETED_ITEM"].ToString(); _pMessageEntity.MSG_EXIST_COMPANY_ID = dtMessage.Rows[0]["MSG_EXIST_COMPANY_ID"].ToString(); _pMessageEntity.MSG_NOT_DELETE_DATA_IN = dtMessage.Rows[0]["MSG_NOT_DELETE_DATA_IN"].ToString(); _pMessageEntity.MSG_NOT_MODIFY_DATA_IN = dtMessage.Rows[0]["MSG_NOT_MODIFY_DATA_IN"].ToString(); _pMessageEntity.MSG_SELECT_NEWREG_SAVE = dtMessage.Rows[0]["MSG_SELECT_NEWREG_SAVE"].ToString(); _pMessageEntity.MSG_INPUT_LARGER_THAN_0 = dtMessage.Rows[0]["MSG_INPUT_LARGER_THAN_0"].ToString(); _pMessageEntity.MSG_NOT_DELETE_DATA_OUT = dtMessage.Rows[0]["MSG_NOT_DELETE_DATA_OUT"].ToString(); _pMessageEntity.MSG_NOT_MODIFY_DATA_OUT = dtMessage.Rows[0]["MSG_NOT_MODIFY_DATA_OUT"].ToString(); _pMessageEntity.MSG_CANCLE_NEWREG_MODIFY = dtMessage.Rows[0]["MSG_CANCLE_NEWREG_MODIFY"].ToString(); _pMessageEntity.MSG_NO_SELETED_ITEM_OR_NO_SAVE = dtMessage.Rows[0]["MSG_NO_SELETED_ITEM_OR_NO_SAVE"].ToString(); _pMessageEntity.MSG_NO_INPUT_LAGER_THAN_NOTINQTY = dtMessage.Rows[0]["MSG_NO_INPUT_LAGER_THAN_NOTINQTY"].ToString(); _pMessageEntity.MSG_REG_DATA = dtMessage.Rows[0]["MSG_REG_DATA"].ToString(); _pMessageEntity.MSG_ADD_FAVORITE_ITEM = dtMessage.Rows[0]["MSG_ADD_FAVORITE_ITEM"].ToString(); _pMessageEntity.MSG_CHECK_SEARCH_DATE = dtMessage.Rows[0]["MSG_CHECK_SEARCH_DATE"].ToString(); _pMessageEntity.MSG_NOT_DISPLAY_ERROR = dtMessage.Rows[0]["MSG_NOT_DISPLAY_ERROR"].ToString(); _pMessageEntity.MSG_NO_EXIST_INPUT_DATA = dtMessage.Rows[0]["MSG_NO_EXIST_INPUT_DATA"].ToString(); _pMessageEntity.MSG_NOT_DISPLAY_NOT_SAVE = dtMessage.Rows[0]["MSG_NOT_DISPLAY_NOT_SAVE"].ToString(); _pMessageEntity.MSG_CHECK_VALID_ITEM = dtMessage.Rows[0]["MSG_CHECK_VALID_ITEM"].ToString(); _pMessageEntity.MSG_DELETE_FAVORITE_ITEM = dtMessage.Rows[0]["MSG_DELETE_FAVORITE_ITEM"].ToString(); _pMessageEntity.MSG_NOT_EXIST_PRINTING_EXCEL = dtMessage.Rows[0]["MSG_NOT_EXIST_PRINTING_EXCEL"].ToString(); _pMessageEntity.MSG_SELECT_DOWNLOAD_TEMPLETE = dtMessage.Rows[0]["MSG_SELECT_DOWNLOAD_TEMPLETE"].ToString(); _pMessageEntity.MSG_RESET_COMPLETE = dtMessage.Rows[0]["MSG_RESET_COMPLETE"].ToString(); } InitializeSetting(); MainFind_DisplayData(); } catch (ExceptionManager pExceptionManager) { CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager.TargetSite.ToString())); } finally { DevExpress.Utils.AppearanceObject.DefaultFont = fntPARENT_FONT;//화면에 모든 항목 폰트 재설정 } }
public async Task CreateAsync(MessageEntity message) { await ModixContext.Messages.AddAsync(message); await ModixContext.SaveChangesAsync(); }
/// <summary> /// 接收数据 /// </summary> /// <param name="sender"></param> /// <param name="me"></param> private void Ci_ReceiveData(object sender, MessageEntity me) { callback.Read(sender as ClientSocketInstance, me); }
private void Page_Load(object sender, System.EventArgs e) { int threadID = HnDGeneralUtils.TryConvertToInt(Request.QueryString["ThreadID"]); _deleteMessageID = HnDGeneralUtils.TryConvertToInt(Request.QueryString["MessageID"]); _thread = ThreadGuiHelper.GetThread(threadID); if (_thread == null) { // not found, return to default page Response.Redirect("default.aspx", true); } // Check if the current user is allowed to delete the message. If not, don't continue. _userMayDeleteMessages = SessionAdapter.CanPerformForumActionRight(_thread.ForumID, ActionRights.EditDeleteOtherUsersMessages); if (!_userMayDeleteMessages) { // is not allowed to delete the message Response.Redirect("Messages.aspx?ThreadID=" + threadID, true); } // check if the user can view this thread. If not, don't continue. if ((_thread.StartedByUserID != SessionAdapter.GetUserID()) && !SessionAdapter.CanPerformForumActionRight(_thread.ForumID, ActionRights.ViewNormalThreadsStartedByOthers) && !_thread.IsSticky) { // can't view this thread, it isn't visible to the user Response.Redirect("default.aspx", true); } // check if the message is the first message in the thread. If so, delete isn't allowed. if (ThreadGuiHelper.CheckIfMessageIsFirstInThread(threadID, _deleteMessageID)) { // is first in thread, don't proceed. Caller has fabricated the url manually. Response.Redirect("default.aspx", true); } // Get the message MessageEntity message = MessageGuiHelper.GetMessage(_deleteMessageID); // User may delete current message. if (!Page.IsPostBack) { if (message != null) { // message is found. ForumEntity forum = CacheManager.GetForum(_thread.ForumID); if (forum == null) { // Orphaned thread Response.Redirect("default.aspx", true); } lblForumName_Header.Text = forum.ForumName; lblMessageBody.Text = message.MessageTextAsHTML; lblPostingDate.Text = message.PostingDate.ToString(@"dd-MMM-yyyy HH:mm:ss"); } else { btnYes.Visible = false; } } }
/// <summary> /// 握手成功手的连接 /// </summary> /// <param name="sender"></param> /// <param name="me"></param> private void Ci_NewUserConnection(object sender, MessageEntity me) { ClientSocketInstance ci = sender as ClientSocketInstance; BroadcastMessage += new BroadcastEvent(ci.SendMessage); callback.NewUserConnectionJoin(ci, me); }
public Task Send(string user, MessageEntity message) { return(Clients.User(user).Send(message)); }
/// <summary> /// 工厂方法 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="acDomain"></param> /// <param name="command"></param> /// <returns></returns> public static MessageTr Create(IAcDomain acDomain, MessageEntity command) { var t = new MessageTr(acDomain); t.Populate(command); return t; }
public Task SendAll(MessageEntity message) { return(Clients.All.SendAll(message)); }
/// <summary> /// 根据传入的命令对象组装命令展示对象 /// </summary> /// <param name="command"></param> private void Populate(MessageEntity command) { this._command = command; this.Id = command.Id; this.MessageId = command.MessageId; this.MessageType = command.MessageType.ToName(); this.Verb = command.Verb.Code; this.InfoFormat = command.DataTuple.InfoFormat; this.InfoValue = command.DataTuple.ValueItems.InfoString; this.Ontology = command.Ontology; this.CatalogCode = command.CatalogCode; this.InfoId = command.DataTuple.IdItems.InfoString; this.LocalEntityId = command.LocalEntityId; this.ClientType = command.ClientType.ToName(); this.ClientId = command.ClientId; this.ReceivedOn = command.ReceivedOn; this.TimeStamp = command.TimeStamp; this.CreateOn = command.CreateOn; this.UserName = command.UserName; this.StateCode = command.Status; this.ReasonPhrase = command.ReasonPhrase; this.Description = command.Description; this.Principal = command.UserName; this.EventSubjectCode = command.EventSubjectCode; this.EventSourceType = command.EventSourceType; this.PopulateCore(command); }
public override void CreateMessage(MessageContext context, string sagaid, SagaEntity sagaentity, MessageEntity messageentity) { try { var serializer = _factory.Create <IMessageSerializer>(_configuration.MessageSerializerType); var tablenamesufix = GetTableNameSufix(sagaid); var table = GetCloudTable(_connectionstring, $"{_messagestorgename}{tablenamesufix}"); var record = new MessageRecord(sagaentity.Key, $"{messageentity.Name}_{Guid.NewGuid()}") { Content = messageentity.Content, ContentType = messageentity.ContentType, Identity = serializer.Serialize(messageentity.Identity), Version = messageentity.Version, RetryCount = messageentity.RetryCount, LastRetry = messageentity.LastRetry, Origin = serializer.Serialize(messageentity.Origin), Saga = serializer.Serialize(messageentity.Saga), Headers = serializer.Serialize(messageentity.Headers), Tracks = serializer.Serialize(messageentity.Tracks), DateTimeUtc = messageentity.DateTimeUtc, Data = messageentity.Data, Name = messageentity.Name, ContentId = messageentity.ContentId, }; var size = Encoding.UTF8.GetByteCount(record.Content); if (size >= 64000) { record.Content = LimitByteLength(record.Content, 63000) + "..."; } var result = table.ExecuteAsync(TableOperation.Insert(record)).GetAwaiter().GetResult(); } catch (StorageException s) { throw new ApplicationException($"Error during the message record creation for saga {context.Saga.Name} with content {context.ContentType.FullName} and route {context.Route.Name}, status code: {s.RequestInformation?.HttpStatusCode} error code: {s.RequestInformation?.ExtendedErrorInformation?.ErrorCode} error message: {s.RequestInformation?.ExtendedErrorInformation?.ErrorMessage}", s); } catch (Exception ex) { throw new ApplicationException($"Error during the message record creation for saga {context.Saga.Name} with content {context.ContentType.FullName} and route {context.Route.Name}", ex); } }