C# 实体框架6:修剪无法正常工作
我有一个将数据从一个数据库实体复制到另一个数据库实体的过程。因此,我在C#中使用实体框架6和LINQ表达式:C# 实体框架6:修剪无法正常工作,c#,sql,entity-framework,linq,C#,Sql,Entity Framework,Linq,我有一个将数据从一个数据库实体复制到另一个数据库实体的过程。因此,我在C#中使用实体框架6和LINQ表达式: public partial class ReferenceEntities : DbContext { public Nullable<System.DateTime> ActivationDate { get; set; } public string Code { get; set; } } this.ReferenceEntities.Refe
public partial class ReferenceEntities : DbContext {
public Nullable<System.DateTime> ActivationDate { get; set; }
public string Code { get; set; }
}
this.ReferenceEntities.ReferenceEntity.AsEnumerable().Select(referenceEntry => new StagingReferenceLoader() {
ActivationDate = referenceEntry.ActivationDate,
Code = referenceEntry.Code?.TrimStart('0').Trim()
});
this.ProcessingEntities.StagingReferenceLoader.AddRange(stagingEntries);
this.ProcessingEntities.SaveChanges();
为什么实体框架不执行修剪操作?代码字段的类型必须是varchar(11),因为char(11)具有固定的长度。DB so将始终填充到整个长度。请将其更改为varchar。您能将[Code]更改为varchar(11)吗?我认为问题在于char(11)总是有一个固定的长度,我会试试看。Thanks@CarlosAdri这是有效的。非常感谢您,我已将评论作为答案复制,请检查其是否为有效答案
SELECT DATALENGTH(code), len(code), code
FROM staging.ReferenceLoader
datalength | len | code
11 | 6 | 253177
11 | 6 | 270724