【问题标题】:create text column with Entity Framework Code First [duplicate]使用实体框架代码优先创建文本列[重复]
【发布时间】:2013-12-02 18:45:08
【问题描述】:

如何创建 TEXT 而不是 NVARCHAR 的字段?现在我有

public string Text { get; set; }

但这总是变成一个 nvarchar 列,我需要一个 Text 列

【问题讨论】:

  • 有很多不同的方法可以做到这一点。您当前配置列存储类型的方法是什么?您在使用模型构建器吗?英孚迁移?属性?
  • 我刚开始接触 c# 和 .net。我知道如何使用 EF 迁移是的。难道没有任何类型的注释可以放在使其成为 TEXT 列的属性上吗?
  • 见这里:stackoverflow.com/a/4913615/328123 编辑:或莫霍的回答:)

标签: c# .net entity-framework


【解决方案1】:

您可以使用System.ComponentModel.DataAnnotations.Schema.ColumnAttribute

[Column(TypeName = "text")]
public string Text { get; set; }

或通过 Fluent API:

modelBuilder.Entity<YourEntityTypeHere>()
    .Property( e => e.Text)
    .HasColumnType( "text" );

【讨论】:

  • 哪个更好,为什么?
  • @OchiFortune 第一个是在类定义中包含注释,第二个是在迁移文件中指定这些属性。
猜你喜欢
  • 2017-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多