2

我倾向于在数据库中创建表,然后将它们拖到 dbml 设计器上以创建我的 DataContext。我通常在 dbml 中手动创建关联,我应该这样做,还是应该已经在数据库中拥有这些关联?我问,因为在 MySQL 世界中,这些关联将由外键表示,我觉得我在数据库级别绕过了它。

4

2 回答 2

1

我建议像在 MySQL 中一样创建外键。设计师会把它们捡起来。

我在做 linq2sql 时的做法是让设计者提供尽可能多的信息,让它在有变化时再次生成整个dbml。

我将自定义存储在一个单独的部分 C# 类中。为什么?我更加确信 db 模式和 dbml 是同步的,所以我可以从同一个模型中推理,而不考虑对 dbml 进行的任何手工定制。最好直接编辑 dbml,因为它可以帮助您更好地诊断问题。

于 2012-05-25T22:13:46.730 回答
1

在 MySQL 中创建外键会更安全。如果它们仅在 DBML 中,您的 .NET 代码将尊重这些关联,但如果您不创建它们,则在数据库级别不会有任何东西来强制执行相同的约束,这意味着直接 DB SQL 访问可能很危险。

于 2012-05-25T22:15:50.847 回答