为什么此Entity的属性缺少SET语句

时间:2011-12-20 01:18:41

标签: c# .net

我正在查看一些示例代码,其中定义了User属性并且(据我所知)正常运行:

**        [Required]
        public string FirstName
        {
            get { return mFirstName; }
            set { mFirstName = value; }
        }

        [Required]
        public string LastName
        {
            get { return mLastName; }
            set { mLastName = value; }
        }

        public string FullName
        {
            get { return FirstName + " " + LastName; }
        }
**

有针对此实体运行的验证类,但不包括FullName:

protected override void ValidateUpdate(User entity)
{
    applySimpleRules
    (
        entity,
        x => x.FirstName,
        x => x.LastName,
        x => x.Phone1,
        x => x.Email,
        x => x.Address,
        x => x.City,
        x => x.State,
        x => x.Zip,
        x => x.Password
    );

正如我所说,该项目正在保存和编辑我测试的所有内容,除了一个特定的记录,看起来像结构上所有其余的 - 具有合法的First和Last但是这个功能(由上面的函数调用)是窒息而且似乎标记'全名',再次...... _不应该在验证字段列表中。

但是我不清楚为什么代码不能包含一个setter并且想知道它是否会发挥作用。

THX

1 个答案:

答案 0 :(得分:0)

我不能告诉你为什么它失败了,但它没有setter因为属性没有持久化。我在这里假设EntityFramework,在这种情况下,它需要保持公共getter / setter。也许您可以包含applySimpleRules的代码?