【问题标题】:Delete Exchange 2003 Emails with WebDav使用 WebDav 删除 Exchange 2003 电子邮件
【发布时间】:2014-08-04 13:18:54
【问题描述】:

我正在尝试使用来自 C# 应用程序的 webdav 自动管理 Exchange 2003 中的收件箱。查看 msdn 对我没有多大帮助,因为此处描述的方法 (http://msdn.microsoft.com/en-us/library/aa142917.aspx) 与我发现的示例完全不相符。所以我要确定两件事:

从 webdav 查询返回的所有字段中

string reqStr =
                @"<?xml version=""1.0""?>
                <g:searchrequest xmlns:g=""DAV:"">
                    <g:sql>
                        SELECT
                            *
                        FROM
                            ""http://server/Exchange/email1@domain.com/Inbox/""
                        WHERE ""urn:schemas:mailheader:from"" = 'email2@domain.com'
                        </g:sql>
                </g:searchrequest>";

哪个是唯一标识符?我已经浏览过它(但不确定验证字段的参考),乍一看似乎 DAV:id 是我想要的 (),但我不想进行假设。

其次,在处理完电子邮件后以编程方式删除电子邮件的正确方法是什么?是否会进行以下工作(是否会删除条目和所有相关元数据)。我不希望在服务器上留下任何孤立的文件...

string reqStr =
                @"<?xml version=""1.0""?>
                <g:searchrequest xmlns:g=""DAV:"">
                    <g:sql>
                        DELETE
                        FROM
                            ""http://server/Exchange/email1@domain.com/Inbox/""
                        WHERE ""DAV:id"" = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX'                                                       
                        </g:sql>
                </g:searchrequest>";

最后,调查从第一个请求返回的所有 XML 数据的最佳在线资源是什么,以及管理 webdav 界面的所有选项记录在哪里?看 MSDN 只是没有收获。

【问题讨论】:

标签: exchange-server webdav


【解决方案1】:

在响应中查找 dav:hef tags 标签。它们包含一个可用于发出删除命令的 url。

【讨论】:

  • 好的,我看到这个带有 URL 的 。我将如何制定 DELETE?会不会和上面一样,除了 WHERE 子句是针对 ""DAV:ID"" = 'urlstring'
  • 我想作为后续,我是否需要做任何事情来清理 = 404 的节点?似乎每 200 个就有一个 404。
  • 您只需向 url 发出 HTTP DELETE 命令。而已。对于不存在的属性,您会收到 404 错误。忽略它们。
【解决方案2】:

从获取 msg Uri 的查询结果中,然后:

var request = (HttpWebRequest)WebRequest.Create(mail.MailUri);
request.Credentials = _credential;
request.Method = "DELETE";

var response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode != HttpStatusCode.OK)
{
   //something might of broke
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-27
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    相关资源
    最近更新 更多