C# 使用LinQ to实体作为数据源编辑DataGridView中的数据

C# 使用LinQ to实体作为数据源编辑DataGridView中的数据,c#,database,linq,entity-framework,linq-to-entities,C#,Database,Linq,Entity Framework,Linq To Entities,这是我正在研究的一个简单模型,三张表。 我需要一个DataGridView来显示ClientID、ClientName、当前余额、所需余额、预期余额、已付余额、差额、支付费用、DateWeekly,这个DataGridView使我能够添加新行并编辑当前的作为数据源,我使用了类似LinQ的 visibledataGridView1.DataSource = context.Payments.Select(x => new { x.Client.ClientName, x.Clie

这是我正在研究的一个简单模型,三张表。
我需要一个DataGridView来显示ClientID、ClientName、当前余额、所需余额、预期余额、已付余额、差额、支付费用、DateWeekly,这个DataGridView使我能够添加新行并编辑当前的
作为数据源,我使用了类似LinQ的

visibledataGridView1.DataSource = context.Payments.Select(x => 
    new {  x.Client.ClientName,
x.ClientID,
x.Current_Balance,
x.Paid,x.Expected,
x.Required,
x.Difference_Exce_Paid,
x.Difference_Req_Paid 
});

但这只显示thid不允许我添加或编辑。

请查看此内容,我希望它有帮助


通过一个小技巧解决了问题,在数据库中检查当前PaymentID,它将由sp修改,更新数据库中的行

如果没有,它将从Payment创建一个新对象并将其添加到Payments。

不要使用匿名类型。