如何在LINQ-To-SQL中排除Contex.InsertOnSubmit()上的用户定义字段?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在LINQ-To-SQL中排除Contex.InsertOnSubmit()上的用户定义字段?相关的知识,希望对你有一定的参考价值。

我还创建了表CustomerPurchase和等效的数据类DBML文件。在这个DBML类中,我添加了我的自定义字段'TotalAmount',用于在Listivew中显示的计算。但是InsertOnSubmit(),它将错误列为无效列名'TotalAmount'。

如何在提交时排除此用户定义的字段?

答案

如果您查看dbml文件,您可以看到它生成partial classes,因此您可以为您的实体创建一些部分类,并创建其他属性,例如您需要的TotalAmount。在那里,您可以访问其他属性并制作计算属性,样本:

namespace YourEntityNameSpace
{
    public partial class CustomerPurchase 
    {
        public double TotalAmount
        { 
            get
            {
                // your code goes here to calculate, for sample:
                return UnitPrice * Amount;
            }
        }
    }
}

以上是关于如何在LINQ-To-SQL中排除Contex.InsertOnSubmit()上的用户定义字段?的主要内容,如果未能解决你的问题,请参考以下文章

如何关联不同 dbml 图上的 Linq-To-Sql 对象?

如何将 LINQ-to-SQL 映射到 BLL 类?

如何改进 Linq-To-Sql 代码

我应该在linq-to-sql中选择哪种关系?

EF 6.x,LINQ-to-SQL和原始SQL子句

通过 LINQ-to-SQl 加载数据集