如何修复错误“名称:不允许指定名称:_destroy”

本文关键字:定名称 destroy 不允许 错误 名称 何修复 | 更新日期: 2023-09-27 18:36:12

我看过类似的问题,建议我应该使用列属性来更改列的名称,但是我已经这样做了,但我仍然收到错误。这是我的模型类:

public class Task
{
    public int TaskID { get; set; }
    public string TaskDescription { get; set; }
    public bool IsDone { get; set; }
    [Column("Active")]
    public bool _destroy { get; set; }
}

如何修复错误“名称:不允许指定名称:_destroy”

问题是实体框架不允许实体属性名称以下划线字符(以及其他字符类)开头。使用 Reflector,我能够追踪用于验证属性名称的正则表达式,如下所示:

@"['p{Ll}'p{Lu}'p{Lt}'p{Lo}'p{Lm}'p{Nl}]['p{Ll}'p{Lu}'p{Lt}'p{Lo}'p{Lm}'p{Nl}'p{Mn}'p{Mc}'p{Nd}'p{Pc}'p{Cf}]{0,}"

这意味着实体属性名称只能以取自以下 Unicode 字符类的字符开头:

Ll, Lu, Lt, Lo, Lm, Nl

属性名称中的其余字符可能包括这些类,以及以下内容:

锰, 騰, 钼, 钼,

钵, 钵, 钵

下划线字符 (U+005F) 位于 Pc 类中。您可以通过将_destroy属性重命名为"销毁"来删除错误。您可以在此处找到字符类参考。