'DirectoryObject' 不包含 'DisplayName' 的定义
'DirectoryObject' does not contain a definition for 'DisplayName'
我正在使用 Microsoft.Graph.Beta nuget package。我能够使用以下方法获得用户和他们的经理:
var me = await graphServiceClient.Me.Request().Expand("Manager").GetAsync();
但是,当我尝试获取用户的经理姓名时,出现错误:
var managerName = me.Manager.DisplayName;
'DirectoryObject' does not contain a definition for 'DisplayName' and no accessible extension method 'DisplayName' accepting a first argument of type 'DirectoryObject' could be found (are you missing a using directive or an assembly reference?) (CS1061)
管理器属于DirectoryObject
类型,我不知道如何从中获取任何信息。好像没用:
这显示了我可以访问的字段。没有 DisplayName
或任何东西。当我尝试调试它时,我可以看到管理器的显示名称,但我无法以编程方式获取它:
尝试将您的代码更改为类似这样的内容..
string managerName = ((User)me.Manager).DisplayName;
此外,另一种方法不是像您提到的那样使用 Expand,而是
var manager = await graphServiceClient.Me.Manager.Request().GetAsync();
然后稍后访问显示名称..
string managerName = ((User)manager).DisplayName;
此外,您提到您正在使用 Microsoft.Graph.Beta nuget 包。至少与用户和管理员相关的功能应该可以正常工作,即使是稳定版本,即 Microsoft.Graph nuget 包。可能您还有其他一些原因需要在您的案例中使用测试包。
我正在使用 Microsoft.Graph.Beta nuget package。我能够使用以下方法获得用户和他们的经理:
var me = await graphServiceClient.Me.Request().Expand("Manager").GetAsync();
但是,当我尝试获取用户的经理姓名时,出现错误:
var managerName = me.Manager.DisplayName;
'DirectoryObject' does not contain a definition for 'DisplayName' and no accessible extension method 'DisplayName' accepting a first argument of type 'DirectoryObject' could be found (are you missing a using directive or an assembly reference?) (CS1061)
管理器属于DirectoryObject
类型,我不知道如何从中获取任何信息。好像没用:
这显示了我可以访问的字段。没有 DisplayName
或任何东西。当我尝试调试它时,我可以看到管理器的显示名称,但我无法以编程方式获取它:
尝试将您的代码更改为类似这样的内容..
string managerName = ((User)me.Manager).DisplayName;
此外,另一种方法不是像您提到的那样使用 Expand,而是
var manager = await graphServiceClient.Me.Manager.Request().GetAsync();
然后稍后访问显示名称..
string managerName = ((User)manager).DisplayName;
此外,您提到您正在使用 Microsoft.Graph.Beta nuget 包。至少与用户和管理员相关的功能应该可以正常工作,即使是稳定版本,即 Microsoft.Graph nuget 包。可能您还有其他一些原因需要在您的案例中使用测试包。