以前,我使用 MVC 创建了 C# 应用程序,并且可以指定要在其文件中的视图上使用的布局视图。这样视图文件包含:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
/*Rest of file*/
Run Code Online (Sandbox Code Playgroud)
最近我开始使用 Razor 页面创建应用程序。到目前为止,我只有一个布局页面。但是,我想对页面子集使用不同的布局页面,并且我只能看到如何为 Pages 文件夹中的所有页面指定单个布局页面。由于布局是在_ViewStart.cshtml文件中声明的。该文件的内容很简单:
@{
Layout = "_Layout";
}
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以对某些页面使用一个布局文件,然后对其他页面使用不同的布局文件?
我们使用 C# 中的 Graph API 从 AD 读取有关 B2C 中用户设置的数据。
我们在 b2c 环境中设置了许多扩展属性,并且希望能够在 C# 应用程序中为用户读取这些属性的值。
我们可以使用以下命令成功请求获取用户的详细信息:
graphServiceClient.Users[userId].Request().Select("id,displayName").GetAsync();
Run Code Online (Sandbox Code Playgroud)
它返回指定属性的详细信息。
但是,我们找不到通过此请求取回扩展属性值的选项。我们已使用存储属性的应用程序的 guid 包含了属性的名称,但不返回属性。
我们还尝试了以下请求,该请求返回“未找到具有给定 id 的扩展”的响应:
var extensionDetails = graphServiceClient.Users[userId].Extensions["extension_{guidWithDashesRemoved}_{attributeName}"].Request().GetAsync();
Run Code Online (Sandbox Code Playgroud)
我们可以通过以下 get 请求在 Postman 中成功完成此操作:
https://graph.microsoft.com/v1.0/users?$select=id,displayName,givenName,postalCode,extension_{guidWithDashesRemoved}_{attributeName}
Run Code Online (Sandbox Code Playgroud)
有人能够取回扩展属性值吗?