我希望我User有一个Guid主键,但是当我创建自己的用户类型时,我的网站会在启动时抛出异常.
任何人都知道如何更改IdentityUser类型?
我这样做了:
services.AddIdentity<MyUser, MyRole>()
.AddEntityFrameworkStores<UBContext>()
.AddDefaultUI()
.AddDefaultTokenProviders();
Run Code Online (Sandbox Code Playgroud)
但是当我的程序启动时,我收到此错误:
InvalidOperationException:没有注册类型为"Microsoft.AspNetCore.Identity.UserManager`1 [Microsoft.AspNetCore.Identity.IdentityUser]"的服务.
这是否与身份UI现在位于单独的lib并且该lib中的控制器期待UserManager<IdentityUser>?的事实有关?
我怎样才能覆盖它?
我正在运行ASP.NET5 RC1 UPDATE1.在project.json中,我的框架是"dnx461".当我尝试调试时(在IIS Express中将DNX_IIS_RUNTIME_FRAMEWORK设置为DNX461),我收到以下警告:
警告MSB3274无法解析主要引用"C:\ mydll.dll",因为它是针对".NETFramework,Version = v4.6.1"框架构建的.这是比当前目标框架".NETFramework,Version = v4.5.1"更高的版本.WebTest C:\ Program Files(x86)\ MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets
"mydll"是一个.NET 4.6.1 DLL.当我尝试使用IIS Express进行调试时,我在调试窗口中获得以下输出:
'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll'.跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'Microsoft.Dnx.Host.Clr'.无法找到或打开PDB文件.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System\v4.0_4.0.0.0__b77a5c561934e089\System.dll'.跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll'.跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Core\v4.0_4.0.0.0__b77a5c561934e089\System.Core.dll'.跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.Host .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Xml\v4.0_4.0.0.0__b77a5c561934e089\System.Xml.dll'.跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Extensions.PlatformAbstractions .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.Loader .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.ApplicationHost .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.Runtime .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.Compilation .dll文件".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.'dnx.exe'(CLR v4.0.30319:DefaultDomain):已加载'C:\ Users\devuser.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin\Microsoft.Dnx.Compilation .Abstractions.dll".跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.程序'[16968] dnx.exe'已退出代码1(0x1).程序'[16968] dnx.exe:程序跟踪'已退出,代码为0(0x0).程序'[20612] iisexpress.exe:Program Trace'已退出,代码为0(0x0).程序'[20612] iisexpress.exe'已退出,代码为-1(0xffffffff). …
我的开发盒上的VM上运行了Kubernetes.我想从VM主机查看Kubernetes仪表板.当我运行以下命令时:
kubectl proxy --address 0.0.0.0 --accept-hosts ^/.*
Run Code Online (Sandbox Code Playgroud)
当我尝试访问仪表板时,我收到了未经授权的错误.
我错过了什么?
我正在将旧的.NET Framework csproj迁移到dotnet核心.什么是dotnet核心相当于此:
<Compile Include="ServiceHost.Designer.cs">
<DependentUpon>ServiceHost.cs</DependentUpon>
</Compile>
Run Code Online (Sandbox Code Playgroud)
我试过了:
<ItemGroup>
<Compile Include="ServiceHost.Designer.cs">
<DependentUpon>ServiceHost.cs</DependentUpon>
</Compile>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
但我得到了这个错误:
包括重复的"编译"项目..NET SDK默认包含项目目录中的"编译"项.您可以从项目文件中删除这些项,或者如果要在项目文件中明确包含它们,请将"EnableDefaultCompileItems"属性设置为"false".有关更多信息,请参阅https://aka.ms/sdkimplicititems.重复的项目是:'ProjectInstaller.Designer.cs'; 'ServiceHost.Designer.cs' TestWindowsService C:\ Program Files文件\ DOTNET\SDK\2.1.4 \的SDK\Microsoft.NET.Sdk \建立\ Microsoft.NET.Sdk.DefaultItems.targets
有人知道在使用时如何使用客户端证书HttpClientFactory吗?在我发现的所有示例中,您需要HttpMessageHandler在HttpClient构造函数中提供 ,这在使用时不可用HttpClientFactory
services.AddHttpClient("NamedClient", client =>
{
var handler = new HttpClientHandler();
X509Certificate2 certificate = GetMyX509Certificate();
handler.ClientCertificates.Add(certificate);
client. // ?? How do I set the handler?
});
Run Code Online (Sandbox Code Playgroud) 假设我的nlog.config中有以下内容(取自http://nlog-project.org/documentation/v2.0.1/html/T_NLog_Targets_MemoryTarget.htm):
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target name="memory" xsi:type="Memory" layout="${message}" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="memory" />
</rules>
</nlog>
Run Code Online (Sandbox Code Playgroud)
如何以编程方式访问此目标?我试图在文本框中显示日志.
对于我的actor层次结构,在通过几个actor处理数据之前,我不知道我需要的所有actor,因此我正在寻找一种方法来返回现有的ActorRef或创建一个新的动作.这就是我希望下面的代码创建一个actor,如果一个不存在于"my-id-1"或者返回已经存在的那个.
Context.ActorOf(MyActor.Props(message), "my-id-1");
Run Code Online (Sandbox Code Playgroud)
InvalidActorNameException如果actor已经存在,上面的代码将(如文档所示)抛出一个.我怎样才能在Akka.net中实现这一目标?
我有一个下拉列表(ComboBox),显示计算机上可用的所有COM端口.现在,当您连接和断开设备时,端口会进出.
出于性能原因,我不想继续通话System.IO.Ports.SerialPort.GetPortNames(),而只是在用户点击Combobox时调用它?这可能吗?是否有MVVM方法来解决这个问题?
我正在使用openiddict和ASP Identity,并且尝试将“ GroupId”添加为登录时返回的身份验证令牌的声明(使用/ connect / token端点-请参见下面的示例)。GroupId是我的AplicationUser类中的一个属性。
我尝试使用,IClaimsTransformer但似乎很笨拙,我无法轻松地从ClaimsTransformationContext进入UserManager。
我该如何通过自己的DI获得UserManager IClaimsTransformer或将GroupId添加到在连接/令牌端点生成的令牌中呢?
我遵循此示例来设置网站。这是我想做的:
var groupGuid = User.Claims.FirstOrDefault(c => c.Type == "GroupGuid");
Run Code Online (Sandbox Code Playgroud) 有没有一种简单的方法可以将 an 转换IdentityResult为IActionResult考虑到错误的 an ?