Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在EF Core 5.0.1中提取OwnsOne作为扩展方法_C#_Entity Framework Core_Extension Methods - Fatal编程技术网

C# 如何在EF Core 5.0.1中提取OwnsOne作为扩展方法

C# 如何在EF Core 5.0.1中提取OwnsOne作为扩展方法,c#,entity-framework-core,extension-methods,C#,Entity Framework Core,Extension Methods,我试图提取“ownsone”作为单独代码的扩展方法,并将其放在MyFramework中,并在所有项目中重用映射 private static void SetSize(EntityTypeBuilder<GateRecord> builder) { builder.OwnsOne(c => c.Container) .Property(x => x.Size) .HasConversion(n

我试图提取“ownsone”作为单独代码的扩展方法,并将其放在MyFramework中,并在所有项目中重用映射

private static void SetSize(EntityTypeBuilder<GateRecord> builder)
{
    builder.OwnsOne(c => c.Container)
                .Property(x => x.Size)
                    .HasConversion(new ValueConverter<ContainerSize, int>
                    (
                        sizeId => sizeId.Id,
                        sizeId => Enumeration.GetBy<ContainerSize>(sizeId)
                    ))
                    .HasColumnName("SizeId");
}
private static void SetSize(EntityTypeBuilder)
{
builder.OwnsOne(c=>c.Container)
.Property(x=>x.Size)
.HasConversion(新值转换器
(
sizeId=>sizeId.Id,
sizeId=>Enumeration.GetBy(sizeId)
))
.HasColumnName(“SizeId”);
}
最后,我在发送这些参数时遇到问题(c=>c.Containerx=>x.Size


你知道怎么解决吗?

请说得更具体些。你们有什么问题?我的问题是所有开发人员在所有项目中都有重复的代码。我将把这段代码移到框架中,供所有开发人员使用。事实上,粗体字应该作为参数传递给函数,我在实现它时遇到了困难。您可以将它们作为委托传递,即
Func拥有的
,但实际上,在这一点上包装EF API只会让开发人员更难。这就是为什么我想要更多关于这个问题的细节,你可以展示一个代码重复的例子,因为你可以在几个微服务中选择像提取接口I have setSize/SetType/SetImoClass等,所以每个开发人员必须在每个EFcore映射中重复代码。请更具体一些。你们有什么问题?我的问题是所有开发人员在所有项目中都有重复的代码。我将把这段代码移到框架中,供所有开发人员使用。事实上,粗体字应该作为参数传递给函数,我在实现它时遇到了困难。您可以将它们作为委托传递,即
Func拥有的
,但实际上,在这一点上包装EF API只会让开发人员更难。这就是为什么我想要更多关于这个问题的细节,你可以展示一个代码重复的例子,因为你可以在几个微服务中选择提取接口I have setSize/SetType/SetImoClass等,所以每个开发人员都必须在每个EFcore映射中重复代码。