我有多个类(A和B)C,每个类都扩展IdentityUser<Guid>。我还有一个名为UserRolewhich extends 的类IdentityRole<Guid>。
以下是我的DbContext:
public sealed class EntityDbContext: DbContext
{
public DbSet<A> As { get; set; }
public DbSet<B> Bs { get; set; }
public DbSet<C> Cs { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我将身份添加到IServiceCollection:
services
.AddIdentityCore<A>()
.AddEntityFrameworkStores<EntityDbContext>()
.AddRoles<UserRole>()
.AddUserStore<AUserStore>()
// .AddRoleStore<TRoleStore>()
.AddDefaultTokenProviders();
// Same for B, C
Run Code Online (Sandbox Code Playgroud)
我还有以下商店:
public class AUserStore : UserStore<A, UserRole, EntityDbContext, Guid> { }
public class BUserStore : UserStore<B, UserRole, EntityDbContext, …Run Code Online (Sandbox Code Playgroud) 我想知道如何将控制台日志记录添加到 EF.Core 而不会收到“过时”警告。
鉴于:
DbContextOptionsBuilder<BenchmarkDbContext> builder = ...;
我试过:
builder.UseLoggerFactory(new LoggerFactory().AddConsole())
Run Code Online (Sandbox Code Playgroud)
并尝试:
var factory = new LoggerFactory();
factory.AddProvider(new ConsoleLoggerProvider((a, b) => true, true));
builder.UseLoggerFactory(factory)
Run Code Online (Sandbox Code Playgroud) 我想测试下面的一段代码。我想知道是否有办法模拟moment.js或强制它认为我当前的位置是America/New_York这样我的单元测试不会在 gitlab.ci runner 中失败,它可能位于不同的地理位置?
const centralTimeStartOfDay = moment.tz('America/Chicago').startOf('day');
const startHour = centralTimeStartOfDay
.hour(7)
.local()
.hour();
Run Code Online (Sandbox Code Playgroud)
基本上我想对我的时区进行硬编码,America/New_York并希望这个函数的行为一致。
编辑:
我试过:
Date.now = () => new Date("2020-06-21T12:21:27-04:00")moment.tz.setDefault('America/New_York')而且,我得到了相同的结果。我想模拟当前时间,以便startHour返回一致的值。
我想知道在AutoFixure中,是否可以从预定义列表中随机选择?例如,当我使用fixture.Create或时fixture.CreateMany,它将从预定义列表中随机选择一个对象。我从文档和搜索Stack Overflow中都没有找到任何类似的东西,所以我不确定是否有可能。
我有一个lambda表达式x => x.person.parent.Id == someId,我想检查是否someId为null.我面临的问题是Id属性是一个可以为空的整数(即int?).这是我的尝试,但如果属性可以为空则它不起作用.任何帮助将不胜感激.谢谢.
private static bool IsNullExpression(Expression exp)
{
if (exp is ConstantExpression constantExpression)
{
return constantExpression.Value == null;
}
return false;
}
public void AddIfNotNull(Expression<Func<T, bool>> exp)
{
// convert expression to binary expression
if (exp.Body is BinaryExpression binaryExpression && (IsNullExpression(binaryExpression.Left) || IsNullExpression(binaryExpression.Right)))
{
// there is a null in expression, we just found it
return;
}
_list.Add(exp);
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试将Azure Table Api与dotnet核心一起使用,并且不断收到此异常:
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Azure.Documents.Client, Version=1.20.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.
at Microsoft.Azure.CosmosDB.Table.CloudTableClient..ctor(StorageUri storageUri, StorageCredentials credentials, TableConnectionPolicy connectionPolicy, Nullable`1 desiredConsistencyLevel)
at Microsoft.Azure.CosmosDB.Table.CloudStorageAccountExtensions.CreateCloudTableClient(CloudStorageAccount account, TableConnectionPolicy connectionPolicy, Nullable`1 consistencyLevel)
at Testing.Program.Main(String[] args) in /Desktop/Repos/TestingWow/Testing/Program.cs:line 22
Run Code Online (Sandbox Code Playgroud)
显然,这是一个常见的异常消息。我将简单的代码放在GitHub上,以防万一。我想我尝试了所有现有的StackOverFlow提示或解决方案,但都没有成功。我不确定问题的根源是什么。我在Mac上使用dotnet core 2.1.104。任何帮助将不胜感激。
.csproj 文件:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.Azure.Common" Version="2.1.4" />
<PackageReference Include="Microsoft.Azure.CosmosDB.Table" Version="1.1.2" />
<PackageReference Include="Microsoft.Azure.DocumentDB" Version="1.22.0" />
<PackageReference Include="Microsoft.WindowsAzure.ConfigurationManager" Version="3.2.3" />
</ItemGroup>
<ItemGroup>
<Reference …Run Code Online (Sandbox Code Playgroud) 我想知道如何模式匹配a Task<T>.更具体地说,给定静态类型的变量object如何获得其Result属性.
基本上,给:
object obj = new Task<string>() // or maybe Task<IEnumerable<...>>
object result = obj... // obj.Result?
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个IQueryable<T>实现IAsyncEnumerable<T>. 我当前的代码不起作用,因为空Enumerable没有实现IAsyncEnumerable<T>。感谢您的任何帮助或提示。
我有以下设计:
var result = Enumerable.Empty<Foo>().AsQueryable(); // Not working!
if (condition1)
{
IQueryable<Foo> part1 = ....;
result = result.Concat(part1);
}
if (condition2)
{
IQueryable<Foo> part2 = ....;
result = result.Concat(part2);
}
return await result.ToListAsync();
Run Code Online (Sandbox Code Playgroud)
错误信息:
The source IQueryable doesn't implement IAsyncEnumerable<Foo>. Only sources that implement IAsyncEnumerable can be used for Entity Framework asynchronous operations.
at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.AsAsyncEnumerable[TSource](IQueryable`1 source)
at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable`1 source, CancellationToken cancellationToken)
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 的IHttpClientBuilder.AddPolicyHandler方法Microsoft.Extensions.Http.Polly创建内置 Polly 策略的 HttpClient 实例。但是,我没有使用 IoC 和 ServiceCollection。如何IHttpClientBuilder在没有 ServiceCollection 和 IoC 的情况下创建,以便我可以使用扩展方法AddPolicyHandler。即使我有 的实例IHttpClientBuilder,如何创建 HttpClient?
我是 Haskell 的新手,我正在尝试理解语法。我有数据类型Vec,它实现了Show,Floating和Foldable. 但是语法不同Foldable,为什么?
data Vec a = Vec [a]
instance Show a => Show (Vec a) where
show (Vec x) = show x
instance Floating a => Floating (Vec a) where
pi = Vec (repeat pi)
exp (Vec x) = Vec (map exp x)
log (Vec x) = Vec (map log x)
sin (Vec x) = Vec (map sin x)
cos (Vec x) = Vec (map cos x)
instance …Run Code Online (Sandbox Code Playgroud) c# ×7
.net-7.0 ×1
.net-core ×1
asp.net-core ×1
autofixture ×1
ef-core-3.0 ×1
haskell ×1
iqueryable ×1
javascript ×1
jestjs ×1
linq ×1
momentjs ×1
polly ×1
syntax ×1
typeclass ×1