Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
Entity framework 从visual studio 2008将外键列导入模型_Entity Framework_Asp.net Mvc 2 - Fatal编程技术网

Entity framework 从visual studio 2008将外键列导入模型

Entity framework 从visual studio 2008将外键列导入模型,entity-framework,asp.net-mvc-2,Entity Framework,Asp.net Mvc 2,我在将db导入visual studio时遇到了一个关于外键的问题 我的开发环境: SQL 2005/2008/2008R2 Visual Studio 2008 ASP.NET MVC 2和.NET framework 3.5 SP1 正在关注MVC音乐商店V1.0 在pdf教程第50页中,它说当我们在最后阶段创建实体数据模型时,我们应该选择在模型中包含外键列 然而,我使用的是VS2008,在这个阶段没有这样的外键选项可供选择 请注意,在红色圆圈内,它应该包含AlbumId、GenreId、A

我在将db导入visual studio时遇到了一个关于外键的问题

我的开发环境:

SQL 2005/2008/2008R2

Visual Studio 2008 ASP.NET MVC 2和.NET framework 3.5 SP1

正在关注MVC音乐商店V1.0

在pdf教程第50页中,它说当我们在最后阶段创建实体数据模型时,我们应该选择在模型中包含外键列

然而,我使用的是VS2008,在这个阶段没有这样的外键选项可供选择

请注意,在红色圆圈内,它应该包含AlbumId、GenreId、ArtistId、标题、价格、AlbumArtURL,如tutotial中所示

但我的模特缺少GenreId和ArtistId

如何处理

稍后,我在创建编辑表单时遇到了一个问题,需要使用类似[[[[model.GenreId%>][]]-][]]的东西,但它不起作用

所以我需要GenreId和ArtistId出现在专辑中。我想这是关于外键的问题

你知道怎么解决吗


非常感谢

这是不可能的。导入外键列是EFv4的功能,所以您需要.NET 4.0和Visual Studio 2010才能使用它

在您的情况下,必须通过基于EntityObject的API访问FK值。您的实体应具有类似GenreReference的属性,以便您可以使用以下内容:

int genreId = (int)entity.GenreReference.EntityKey.EntityKeyValues[0];

thanx对于你的回复,我可以得到fk值,但实际上我在编辑回发mtd时遇到了问题,其中下拉列表的html代码与控制器中的一样,我使用了updatemodel mtd,它更新了相册表的属性,但无法更新FK参考值,即Album表中的artistid和genereid,这可能是因为在我们的.edmx模型中没有generId和artistid等属性。。。