我想添加MediatR
到我的服务中。
这是代码:
public class Program
{
public static async Task Main(string[] args)
{
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddMediatR(Assembly.GetExecutingAssembly());
}
// rest of codes ...
}
Run Code Online (Sandbox Code Playgroud)
这是错误:
错误 CS1503 参数 2:无法从“System.Reflection.Assembly”转换为“System.Action<Microsoft.Extensions.DependencyInjection.MediatRServiceConfiguration>”
我正在尝试使用 Moq 创建一个单元测试来测试 Microsoft.AspNetCore.Identity 用户管理器。我知道 Moq 很适合模拟接口,但 UserManager 没有接口。
这是我的代码:
Mock<UserManager<User>> userManagerMock = new Mock<UserManager<User>>();
// rest of my code ...
Run Code Online (Sandbox Code Playgroud)
这是错误:
Castle.DynamicProxy.InvalidProxyConstructorArgumentsException :无法实例化类的代理:Microsoft.AspNetCore.Identity.UserManager`1[[WebAPI.Core.Model.User,Core,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null]]。找不到无参数构造函数。
SignInManager
没有的话可以使用吗HTTPContext
?我正在制作 Blazor 服务器端应用程序,我需要让最终用户使用 的PasswordSignInAsync()
方法登录SignInManager
。
如果有其他方法可以用cookies或其他东西来做到这一点,我也会采用,只要它们是“干净”的方法。
如果我还能得到有关如何配置解决Startup.cs
方案的解释,那就完美了。
我已将我的项目更新到 Angular 16。在 中app.module.ts
,我有一组名为 的组件entryComponents
。但是,entryComponents
Angular 16 中不再提供这些组件。我应该在哪里将这些组件添加到我的项目中:
entryComponents:[
PayResultDialogComponent,
MessageBoxComponent
],
Run Code Online (Sandbox Code Playgroud) 我有一个用于 REST API 的 HttpClient。我从服务器获取访问令牌,但无权使用 REST API。响应是Error: Unauthorized
首先,使用getAccessToken()
方法,我获取访问令牌。
public static async Task<string> getAccessToken()\n {\n var client = new HttpClient();\n\n client.DefaultRequestHeaders.Add("Referer", "http://admin.altrabo.com/");\n\n var tokenClient = new TokenClient()\n {\n client_Id= -1,\n username= "admin",\n password= "Main@dm!n",\n grant_Type= "Main@dm!n",\n externalProvider= 1,\n \n };\n\n HttpResponseMessage response = await client.PostAsJsonAsync<TokenClient>("https://api.altrabo.com/api/v1/token", tokenClient);\n var json = JsonSerializer.Deserialize<AccessToken>(response.Content.ReadAsStringAsync().Result);\n return json.access_token;\n }\n
Run Code Online (Sandbox Code Playgroud)\n它返回访问令牌。
\n然后,使用该verifyToken()
方法验证访问令牌。
public static async Task<string> verifyToken(string access_token)\n{\n var client = new HttpClient();\n client.DefaultRequestHeaders.Add("Authorization", "Bearer " + …
Run Code Online (Sandbox Code Playgroud) c# ×4
asp.net-core ×3
angular ×1
angular16 ×1
asp.net ×1
asp.net-mvc ×1
blazor ×1
mediatr ×1
moq ×1
typescript ×1
unit-testing ×1
xunit ×1