c# - Entity Framework - 数据绑定(bind)自定义字段错误(未找到属性)

标签 c# asp.net entity-framework webforms

使用 Entity Framework,我用属性的“显示友好”版本扩展了一个实体类,在本例中,CommissionRate 是一个实体属性,CommissionRateDisplay 这是我自己的自定义属性。在我绑定(bind)的 Web 窗体控件中,我想显示一个整数百分比 3 但在数据库中我想存储为小数 0.03

我在名为 CommissionRateDisplay 的分部类中使用 getset 方法创建了一个自定义字段,如下所示:

partial class SalesOrder
{
    public double CommissionRateDisplay
    {
        get { return (this.CommissionRate ?? 0) * 100; }
        set { this.CommissionRate = value / 100; }
    }
}

保存实体时,出现以下错误:

在插入、更新或删除操作期间,在实体上找不到名为“CommissionRateDisplay”的属性。检查以确保指定为绑定(bind)表达式的属性可用于数据源。

我只想绑定(bind)我的自定义属性并让它在数据库中保留修改后的原始属性。 获取值工作得很好,但设置则不行。

我是在以正确的方式处理这个问题,还是有更好的方法?如果这是重复的,我们深表歉意;我找不到能够清楚简洁地解决问题的解决方案。

最佳答案

您需要向您的自定义属性添加一个 [NotMapped] 注释,让 Entity Framework 知道您不希望它成为表中的一列。

关于c# - Entity Framework - 数据绑定(bind)自定义字段错误(未找到属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28184435/

相关文章:

entity-framework - SQLite 和 Entity Framework 6 如何结合

c# - 通过 DbContext 与 UserManager 访问

c# - Unity3d:通过GetComponent错误从另一个脚本访问类

c# - 在回发中获取复选框后面的代码

asp.net - 如何在 ASP.NET 应用程序中查询 Word docx?

c# - 如何禁用泛型复杂类型字段的延迟加载?

c# - '' 附近的语法不正确。字符串 ' ' 后的非引号

c# - 从 WPF 应用程序注销 Azure Active Directory 应用程序?

asp.net - JavaScript window.parent 问题

entity-framework - 在 EF Code First 中启用级联删除而不暴露外键