Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在dbml文件中创建关联?_C#_.net_Sql Server_Linq - Fatal编程技术网

C# 在dbml文件中创建关联?

C# 在dbml文件中创建关联?,c#,.net,sql-server,linq,C#,.net,Sql Server,Linq,我倾向于在数据库中创建表,然后将它们拖到dbml设计器上以创建我的DataContext。我通常在dbml中手动创建关联,是应该这样做,还是应该已经在数据库中创建了这些关联?我这样问是因为在MySQL世界中,这些关联将由外键表示,我觉得我在数据库级别绕过了外键。我建议像在MySQL中一样创建外键。设计师会把它们捡起来 在执行linq2sql时,我的方法是让设计器提供尽可能多的信息,并在发生更改时让它再次生成整个dbml 我将定制存储在一个特定的部分C#类中。为什么?我更确信db模式和dbml是同

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

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

在执行linq2sql时,我的方法是让设计器提供尽可能多的信息,并在发生更改时让它再次生成整个dbml


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

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