Магазин Exchange 2010 Eairs в SQL
-
27-09-2019 - |
Вопрос
У меня есть приложение, которое начнет поток программы с поступлением электронной почты. Мне нужно будет связать письмо с моим приложением, что я собираюсь сделать через пользовательскую недвижимость в сообщении.
Затем мне нужно будет хранить электронную почту для справки навсегда. Поскольку Exchange 2010 поддерживает только 10 ГБ и 100 000 элементов в почтовом ящике (без использования файлов PST), мне нужно получить сообщение в более постоянный магазин, SQL.
Я запускаю SQL 2005, и я хочу хранить там электронное письмо, но не как изображение, поэтому я могу найти его, если мне нужно. Как я использую Exchange Web Services, чтобы получить электронное письмо, у меня уже есть полный XML для сообщения. Я полагаю, что хранирую его в поле XML, которое связано с схемой XML схемы XML (чтобы помочь с производительностью), должно дать мне лучшее решение.
Моя проблема заключается в том, чтобы получить схему XML для сообщения. Я никуда не могу найти его нигде, и, похоже, не будет много онлайн-контента для подачи сообщений в SQL.
Я собираюсь делать это все неправильно или есть лучше для меня лучшее решение? Почтовый ящик прогнозируется, чтобы получить более 600 тысяч электронных писем в год.
Любая помощь или помощь будут счастливо получены.
Спасибо, Майк
Решение
я использовал Xmlspy. Для генерации схемы на основе файла XML. Это не будет идеальным, но это работает для меня.
XMLSPY сгенерировал более чем ниже, но он был слишком ограничен, а также SQL не подтвердил его. Поэтому я вынул некоторые из дополнений и держал его хорошо и просто.
Вот сгенерированная ее схема XML MessageType;
<?xml version="1.0" encoding="UTF-8"?>
<!--W3C Schema generated by XMLSpy v2010 rel. 3 (x64) (http://www.altova.com)-->
<xs:schema xmlns:n1="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://schemas.microsoft.com/exchange/services/2006/types" schemaLocation="messagetype1.xsd"/>
<xs:element name="MessageType">
<xs:complexType>
<xs:sequence>
<xs:element ref="n1:ItemId"/>
<xs:element ref="n1:ParentFolderId"/>
<xs:element ref="n1:ItemClass"/>
<xs:element ref="n1:Subject"/>
<xs:element ref="n1:Sensitivity"/>
<xs:element ref="n1:DateTimeReceived"/>
<xs:element ref="n1:Size"/>
<xs:element ref="n1:Importance"/>
<xs:element ref="n1:IsSubmitted"/>
<xs:element ref="n1:IsDraft"/>
<xs:element ref="n1:IsFromMe"/>
<xs:element ref="n1:IsResend"/>
<xs:element ref="n1:IsUnmodified"/>
<xs:element ref="n1:DateTimeSent"/>
<xs:element ref="n1:DateTimeCreated"/>
<xs:element ref="n1:DisplayCc"/>
<xs:element ref="n1:DisplayTo"/>
<xs:element ref="n1:HasAttachments"/>
<xs:element ref="n1:Culture"/>
<xs:element ref="n1:EffectiveRights"/>
<xs:element ref="n1:LastModifiedName"/>
<xs:element ref="n1:LastModifiedTime"/>
<xs:element ref="n1:IsAssociated"/>
<xs:element ref="n1:WebClientReadFormQueryString"/>
<xs:element ref="n1:ConversationId"/>
<xs:element ref="n1:Sender"/>
<xs:element ref="n1:IsReadReceiptRequested"/>
<xs:element ref="n1:ConversationIndex"/>
<xs:element ref="n1:ConversationTopic"/>
<xs:element ref="n1:From"/>
<xs:element ref="n1:InternetMessageId"/>
<xs:element ref="n1:IsRead"/>
<xs:element ref="n1:ReceivedBy"/>
<xs:element ref="n1:ReceivedRepresenting"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Другие советы
Вы можете хранить его в столбце XML, индексируйте этот столбец и ищите через него.
Что касается сообщения XML схемы, там, вероятно, одна, но я не могу его найти.