You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EF Core 7 Code First如何将指定列设置为nvarchar(max)?

在EF Core 7.0中指定列类型为nvarchar(max)的方案

针对你已经通过ConfigureConventions全局设置string类型默认长度为50的场景,要单独将Log实体的Errors列设为nvarchar(max),在OnModelCreating里可以用以下两种方式:

  • 直接指定列类型:

    modelBuilder.Entity<Log>()
        .Property(p => p.Errors)
        .HasColumnType("nvarchar(max)");
    
  • 通过HasMaxLength(-1)映射max长度:

    modelBuilder.Entity<Log>()
        .Property(p => p.Errors)
        .HasMaxLength(-1);
    

这两种方式都会覆盖全局的默认长度配置,最终让Errors列生成nvarchar(max)类型。

内容的提问来源于stack exchange,提问作者jrn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 19:15:40