data first 时如何修改EF自动生成的model,而不用担心会因重新生成而覆盖修改呢 答 修改tt文件 如 添加ef不会自动生成的displayname属性时可采用以下方法 /// <summary> /// <#=SummaryComment(primitiveProperty)#> /// </summary><#=LongDescriptionCommentElement(primitiveProperty, 1)#> [EdmScalarPropertyAttribute(EntityKeyProperty=<#=code.CreateLiteral(ef.IsKey(primitiveProperty))#>, IsNullable=<#=code.CreateLiteral(ef.IsNullable(primitiveProperty))#>)] [DataMemberAttribute()] [DisplayName("<#=SummaryComment(primitiveProperty)#>")] <#=code.SpaceAfter(NewModifier(primitiveProperty))#><#=Accessibility.ForProperty(primitiveProperty)#> <#=code.Escape(primitiveProperty.TypeUsage)#> <#=code.Escape(primitiveProperty)#> { <#=code.SpaceAfter(Accessibility.ForGetter(primitiveProperty))#>get { ... } ... } 效果即为 /// <summary> /// 上级ID /// </summary> [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)] [DataMemberAttribute()] [DisplayName("上级ID")] public global::System.Int32 ParentID { get { ... } }