0

如何以编程方式从 Exchange 2003 查询用户的语言/区域设置/区域?

我正在使用Independentsoft 的 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。我不想检查顶级文件夹并将其与查找表匹配;还有其他方法吗?

WebDAV api 有一个属性getcontentlanguage,看起来它应该包含邮箱的关联语言(或至少像收件箱这样的顶级文件夹),但是每当我查询该字段时,Exchange 都会返回 404:

提琴手截图

4

1 回答 1

0

我能够得到一些接近的东西,但不完全是我正在寻找的东西。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() ?? "");

希望还有更好的方法来做到这一点。

于 2015-04-14T17:30:16.850 回答