2009-07-09 100 views
1

我从数据库创建一个.dbml文件。我的“财产”表具有“县”表和“propertysource”表的外键。dbml实体关系问题

当生成代码时,Property.Source被定义为PropertySource类型,但Property.County被定义为int,而不是County类型。

恐怕我没有使用LINQ to SQL的经验来了解这里发生了什么,或者为什么会这样或者如何解决它。我找不到任何可能导致此问题的模式。我如何获得自动生成的代码来识别Property对象的County属性是县级类型?

回答

1

当您打开dbml设计器时,请确保您有一个图表显示来自Property类的两个箭头:一个箭头指向County类,另一个箭头指向PropertySource类。另外,你的设计师也应该有这三类。

如果您没有看到对象模型,那么数据库模式设置的方式可能有问题。

我会检查以确保您的外键正确设置。

+0

该图看起来正确;箭头在正确的地方。所有三个实体都在设计者中。外键正确设置。 – 2009-07-09 17:40:37

2

当您单击DBML文件中的属性时,可以使用属性窗口修改它的类型。在“属性”窗口中,有一个Type字段。您可以从下拉列表中选择一些标准类型,或使用其全名输入您自己的自定义类型,即。 “MyProject.Location.Country.CountryType”等。

确保在您尝试在IntelliSense中访问此项目之前重建您的项目。希望这可以帮助!