小编Mat*_*uni的帖子

OpenID 的 Swashbuckle 问题

我已经在 ASP.NET Core 上配置了 Swashbuckle (5.0.0-rc2) 来与我的 OpenID 服务器 (Openiddict) 一起工作,但是 Swagger 没有显示任何可用的授权。只有一个空的模态。

这是我在 swagger 上设置 OpenID 的片段

services.AddSwaggerGen(c =>
{
    //... omitted for brevity
    //baseAccountsUrl is "https://localhost:5401"

    c.AddSecurityDefinition("AccountsOpenID", new OpenApiSecurityScheme
    {
        Type = SecuritySchemeType.OpenIdConnect,
        OpenIdConnectUrl = new Uri($"{baseAccountsUrl}/.well-known/openid-configuration")
    });
}
Run Code Online (Sandbox Code Playgroud)

如果我在到达这里之前登录每个操作都可以正常工作,否则每个方法都将被重定向到登录并显示在服务器响应中。

如果我使用 OAuth2 而不是 OpenID 和密码流(它在 Openiddict 上以这种方式配置)并且没有登录浏览器,它也不会成功。

我究竟做错了什么?

.net c# openid-connect swashbuckle asp.net-core

5
推荐指数
1
解决办法
2507
查看次数

WPF DataGridComboBoxColumn不起作用

我有DataGridComboBoxColumn一个DataGridWPF项目中设置这样的:

<DataGridComboBoxColumn Header="Master" SelectedItemBinding="{Binding MasterId}" SelectedValueBinding="{Binding Id}" DisplayMemberPath="Id" ItemsSource="{Binding Masters}" />
Run Code Online (Sandbox Code Playgroud)

但是当我运行项目时,该列仅显示空白值,并且处于编辑模式的组合框执行相同的操作。

DataGrid的设置如下:

<DataGrid Name="ReadersGrid"  Grid.Row="0" Grid.Column="0" Margin="3" ItemsSource="{Binding Readers}" CanUserAddRows="True" CanUserDeleteRows="True" AutoGenerateColumns="False">
Run Code Online (Sandbox Code Playgroud)

和用户控件是这样的:

<UserControl x:Class="SmartAccess.Tabs.ReadersTab"
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:local="clr-namespace:SmartAccess.Tabs"
     mc:Ignorable="d" 
     d:DesignHeight="300" d:DesignWidth="300" DataContext="{StaticResource ReadersListViewModel}">
Run Code Online (Sandbox Code Playgroud)

其他列(仅文本)可以正常工作。

ViewModel具有这些属性

public ObservableCollection<ReaderViewModel> Readers { get; set; }
public IEnumerable<ReaderViewModel> Masters => Readers.Concat(new List<ReaderViewModel> { new ReaderViewModel { Id = -1 } }).OrderBy(t => t.Id);
Run Code Online (Sandbox Code Playgroud)

集合viewmodel具有这些属性

public long Id { get; set; }
public long MasterId { …
Run Code Online (Sandbox Code Playgroud)

.net c# wpf xaml mvvm

3
推荐指数
1
解决办法
894
查看次数

IdentityServer4 和 UserInfo 端点自定义

我创建了一个 IdentityServer4 应用程序,如果我在该应用程序中登录,用户声称一切都很好。如果我从另一个客户端应用程序 (MVC) 登录,则 UserInfo 端点不会返回相同的声明。

IdentityServer 配置了 ASP.NET Identity,因此 UserProfile 已经配置为返回所有 UserClaims,就像我创建的一样。

我不明白为什么它没有显示在同意视图中或者它没有包含在 UserInfo 端点结果中

c# openid asp.net-core identityserver4

3
推荐指数
1
解决办法
3176
查看次数