使用 WebDAV 在 Exchange 2003 上查询用户的语言

Query a user's Language on Exchange 2003 using WebDAV

如何以编程方式从 Exchange 2003 中查询用户的 Language/Locale/Region?

我正在使用 Independentsoft's Exchange WebDAV api。我正在尝试获取如下方法签名:

public string GetUsersLanguage(string username, string password){
   //magic

   //return fr-FR, or en-US, or nl-NL, etc
}

Exchange 2003 将配置默认文件夹(收件箱、日历等)以在首次访问邮箱时匹配用户的区域设置。因此 Inbox 变成 Postvak IN 荷兰语。我不想检查顶级文件夹并将其与查找相匹配 table;还有别的办法吗?

WebDAV api 有一个 属性 getcontentlanguage 看起来应该包含邮箱(或至少像收件箱这样的顶级文件夹)的相关语言,但无论何时我查询该字段 Exchange returns a 404:

我能够得到一些接近的东西,但不是我正在寻找的东西。 Exchange 2003 OWA 有一个 属性 spellingdictionarylanguage 可以 包含与用户文化非常接近的特征。我说 可以 因为只有在用户登录 OWA Premium(通过兼容模式的 IE)并明确设置拼写词典时才设置此字段。

Resource resource = new Resource(session);

var allProps = resource.GetProperties();

Console.WriteLine(
    "Culture (Best Guess via Spelling Langauge): " +
     allProps
         .Where(x => x.Name == "spellingdictionarylanguage")
         .Select(x => x.Value)
         .FirstOrDefault() ?? "");

希望还有更好的方法。