前端之家收集整理的这篇文章主要介绍了
c# – 更改所有字符串属性的最大长度,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在EF 6中,我可以这样做:
modelBuilder
.Properties()
.Where(p => p.PropertyType == typeof(string) &&
p.GetCustomAttributes(typeof(MaxLengthAttribute),false).Length == 0)
.Configure(p => p.HasMaxLength(2000));
由于EF7 ModelBuilder没有Properties()函数,我如何在EF7中做同样的事情?
我认为这是EF Core中“仍然缺乏”的
功能之一,并期望在以后的版本中
添加它.
在那之前,我能建议的最接近(对于v1.1.0)如下:
foreach (var p in modelBuilder.Model
.GetEntityTypes()
.SelectMany(t => t.GetProperties())
.Where(p => p.ClrType == typeof(string) && p.GetMaxLength() == null))
{
p.SetMaxLength(2000);
}
原文链接:https://www.f2er.com/csharp/243954.html