Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.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
Entity framework core entity framewrk core IEntityTypeConfiguration类是否具有精度()函数?_Entity Framework Core - Fatal编程技术网

Entity framework core entity framewrk core IEntityTypeConfiguration类是否具有精度()函数?

Entity framework core entity framewrk core IEntityTypeConfiguration类是否具有精度()函数?,entity-framework-core,Entity Framework Core,在EF6中,我可以创建如下映射字段: Property(_ => _.Total_Excursion).HasColumnName("TOTAL_EXCURSION").HasColumnType("NUMBER") .HasPrecision(12, 2); 现在我使用ef core,不能使用HasPrecision()函数。 还有其他替代方法吗?我想这样就可以了 如果您使用的是EF3 Property(

在EF6中,我可以创建如下映射字段:

Property(_ => _.Total_Excursion).HasColumnName("TOTAL_EXCURSION").HasColumnType("NUMBER")
                    .HasPrecision(12, 2);

现在我使用ef core,不能使用HasPrecision()函数。
还有其他替代方法吗?

我想这样就可以了

如果您使用的是EF3

Property(_ => _.Total_Excursion)
            .HasColumnName("TOTAL_EXCURSION")
            .SetColumnType("decimal(12, 2)");
如果你在EF5上

 Property(_ => _.Total_Excursion)
                .HasColumnName("TOTAL_EXCURSION")
                .property.SetPrecision(12);
                .property.SetScale(2);
我找到了答案, 使用EF3:

Property(_ => _.Total_Excursion)
            .HasColumnName("TOTAL_EXCURSION")
            .HasColumnType("decimal(12, 2)");

这回答了你的问题吗?正如副本的答案所示,在EF Core 3中,您可以使用
SetColumnType
。在EF Core 5中,
SetPrecision
。对于早期版本-如果可以,请不要使用它们,直接转到EF Core 3.1。它是一个.NET标准2.0包,这意味着您也可以在.NETCore2.1中使用它。EF Core 1.x太离奇了,无法使用,EF Core 2.x仍然有一些令人不快的功能,如客户端评估。在EF Core 3 EntityTypeBuilder中,我遇到一个错误cs1912:PropertyBuilder不包含SetColumnType的定义