gpt4 book ai didi

entity-framework-4 - EF4 CodeFirst CTP5 nvarchar(max) 通过属性

转载 作者:行者123 更新时间:2023-12-04 07:53:09 25 4
gpt4 key购买 nike

有没有办法创建一个自定义属性,使 EF CodeFirst 使用 nvarchar(max) 作为数据类型分配给 poco 类的属性时?我知道这可以通过 fluent api 实现,但我们希望将所有定义都放在一个地方,这就是元数据类。

流畅的API:

modelBuilder.Entity<Event>().Property(p => p.TicketText).HasColumnType("nvarchar(max)");

最佳答案

public class NVarcharMaxAttribute : Attribute { }

public class NVarcharMaxAttributeConvention : AttributeConfigurationConvention<PropertyInfo, StringPropertyConfiguration, NVarcharMaxAttribute> {
public override void Apply(PropertyInfo memberInfo, StringPropertyConfiguration configuration, NVarcharMaxAttribute attribute) {
configuration.ColumnType = "nvarchar(max)";
}
}

protected override void OnModelCreating(ModelBuilder modelBuilder) {
modelBuilder.Conventions.Add<NVarcharMaxAttributeConvention>();
}

关于entity-framework-4 - EF4 CodeFirst CTP5 nvarchar(max) 通过属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5083456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com