?????????????????????????
????????????????б?????????仯?????????????????????????????????????????????????????κα???????????????????????????????????????????б仯????????????д??仯??????????????????????????????????????????????????????д??????????????????????д??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????п?????????????????????????????????????????????????????????????????????????????
????public async Task<OperationResponse> DeleteMessage(int messageId?? string readerLoginName)
????{
????IContactRepository contactRepository = new ContactRepository();
????IMessageRepository messageRepository = new MessageRepository();
????Message message = await messageRepository.GetByKey(messageId);
????if (message == null)
????{
????return OperationResponse.Error("?????????????????????????");
????}
????Contact reader = await contactRepository.GetContactByLoginName(readerLoginName);
????if (reader == null)
????{
????return OperationResponse.Error("???????????????????????????");
????}
????if (!message.CanRead(reader))
????{
????throw new Exception("?????????????????????????");
????}
????message.DisposeMessage(reader);
????var messages = await messageRepository.GetMessages(message?? reader);
????foreach (Message item in messages)
????{
????item.DisposeMessage(reader);
????messageRepository.Update(item);
????}
????await messageRepository.Context.Commit();
????return OperationResponse.Success("??????");
????}
???????????ò????????????????????????ò???????????????????????????????????????????????????????????????????????????????“δ??”??“???”???????????????????ò? ReadMessage ?????У????????????????????????????????????????????????????????????????Щ???????
????????????Щ???
??????????????????????????·????????????????????Щ????????????Щ???????????????????????????????ó????μ????????仯??????????????????????????????????????????????????????仯??????????ó????????????????????????????????????????????????“??????”?????????????????????????????????????仯???
????????????????仯???????????????????????????з????????????????????????????????????“Does your code look like this??”?????????????????????????????????????????????????????á?
????????????Щ??????????????????????????ε????????仯????????????????????????????????????????????????
???????????仯?????????仯????
???????????????????У?????б????????????????????ò???????????????????????п????????????????????????????????????????????仯??????????????????????仯???????????У????????????????????????????? SendSiteMessageService ???????????????????????仯??????????????????????????????仯???????????????????????????????????????????????????????????????????????????????????????????????ò??л???????????????????? SendSiteMessageService ??????????????????????????????????
??????????????????????????????????????????????????й?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????壬???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????? ReplySiteMessageService??????????????????Щ??????????? SendSiteMessageService ?????????????Щ?????????????? 1 ???????? 200 ????????????????????????????????????????У?????????????????????????????????????????????????κ??????????????????????????????????????????????????????????????????
?????????????????仯???????????????δ???????????????????????????????????仯???????????????????б??д??????????????????????????????????ó?????????????????????????????????????????????????????????????????????????????????????????????????????У??????????????????????????????δ??????????????κ????????????????????е?????????о???????????????ж????????????????????????????????????·???????????????????????????????????????????????仯??????????Щ???????????????????????н??б?????????
??????????????????
?????????????????????????????????????????Щ?????????????£???????????????????????????????ORM??
???????????????????????????????????????洢???????????????????????????????????????κη??????????????????????????????????????????????????????????У?????????л????????????????????
????????????????е??Щ?????????
??????????ò??е? DTO ?????????
???????????????????????????????????????????????????????????? Jimmy??AutoMapper ?????????? Select N ????????????????????????????????????????? AutoMapper ?????Щ????????????????е? Project().To()????????????????Υ????????????????в?????Щ???
???????????????????????????????????????????????????????????????????Щ?????????????????????????????о????????????????? CQRS??ES???????????μ?????????????????????????????£????μ?????????????
????д???
???????????????????·????к????????????????????????????????????????????????????????ε????????仯???????Щ??????????????????????????????????????????????????????Щ??????