entity-framework - 使用代码优先 EF CTP5 生成货币类型字段

标签 entity-framework ef-code-first entity-framework-ctp5

在这篇博文中:EF4 Code First Control Unicode and Decimal Precision, Scale with Attributes , 戴恩·莫格里奇 使用属性来控制在数据库上创建不同类型。

...我发现这个非常独特 BTW !!!

如果可以使用约定或属性从模型中使用 EF CTP5 的代码优先 API,我如何在生成的数据库中生成货币类型字段?

对不起,我的英语不是我的主要语言。

提前致谢。

最佳答案

例如,考虑这个 Invoice 类:

public class Invoice
{
    public int InvoiceId { get; set; }                
    public decimal Amount { get; set; }
}

您可以使用 fluent API 做到这一点:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Invoice>()
                .Property(i => i.Amount)
                .HasColumnType("Money");
}

或者您可以使用数据注释来做到这一点:
public class Invoice
{
    public int InvoiceId { get; set; }                

    [Column(TypeName="Money")]
    public decimal Amount { get; set; }
}

关于entity-framework - 使用代码优先 EF CTP5 生成货币类型字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4829776/

相关文章:

c# - 长事务的死锁

c# - DDD、EF、聚合

c# - 将linq中的字符串转换为int到大数据库上的实体

c# - 基于类型变量实例化不同存储库的策略模式

database - 如何首先与 Entity Framework 代码热切加载多对多关系?

c# - EF Code First MigrateDatabaseToLatestVersion 从配置中接受连接字符串名称

visual-studio-2010 - 我可以将 Entity Framework 6 与 Visual Studio 2010 一起使用吗?

entity-framework - EF CTP5 无法更新可选导航属性

c# - 如何使用存储库模式(或更合适的东西)来实现这个?

c#-4.0 - EF 代码优先 - Include(x => x.Properties.Entity) a 1 : Many association