linq-to-sql - 在 LINQ 中对同一个表使用多个外键

标签 linq-to-sql

我有一个表用户和一个表项目

在 Items 表中,我有一些字段,例如

修改者
由...制作
分配给

它们都有一个 userId 整数。数据库设置为将这些作为外键返回到用户表。

使用 LINQToSQL 时,从 dbml 自动构建的关系最终会为我提供诸如 User、User1 和 User2 之类的名称

例如myItem.User1.Name 或 myItem.User2.Name

显然,这不是很可读,我希望它与

myItem.CreatedByUser.Name 或 myItem.ModifiedByUser.Name 等

我可以更改关系的名称,但这意味着每次更改 db 架构并刷新 dbml 时都必须重做。

有没有办法解决这个问题?

最佳答案

首先,不...名称是根据关系中的第二个表创建的。

但是您应该知道的是,您不必“刷新”(意思是,删除 DBML 中的表,然后重新拖放它)。

对于我正在处理的项目,我们有 200 多个表......其中大约 50 个我们在从数据库中拖动它们后手动调整。我们从不删除和重新拖动表格,因为自动生成后发生了很多变化。

关于linq-to-sql - 在 LINQ 中对同一个表使用多个外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2566033/

相关文章:

c# - 检查我是否已经插入了特定记录

LINQ - LINQ to SQL 与 LINQPad 的不同结果

C# - Linq to SQL,类型转换错误

c# - Linq 2 SQL - 使用比 'Id' 的 ID 名称

c# - LINQ转SQL

c# - 使用 linq 将逗号分隔的列表放入列中

c# - Linq2sql/ GridView : Pagination not working?

c# - LINQ-to-SQL 查询何时执行?

linq-to-sql - 具有多个条件的FirstOrDefault

linq-to-sql - Linq to Sql 不区分大小写的相等性