1

我正在尝试从默认的 MVC 4 Internet 应用程序更新简单身份验证。我的问题是我的主机提供商将用户名附加为我创建的表的架构,所以我有一个 username.UserProfile 表而不是 dbo.UserProfile。

在 AccountModels.cs 文件中,我将 TableAttribute 更新为 [Table("username.UserProfile")] 而不仅仅是 [Table("UserProfile")] 应该更改根据本文使用的架构(http://msdn .microsoft.com/en-us/library/system.data.linq.mapping.tableattribute.aspx)。

虽然在运行应用程序时我仍然收到实体框架错误。

System.Data.SqlClient.SqlException (0x80131904):无效的对象名称“dbo.username.UserProfile”。

所以它仍然将 dbo 作为模式附加......有人有什么想法吗?

谢谢!

4

1 回答 1

1

试试[Table("UserProfile", Schema = "username")]——模式有一个单独的属性。

(我认为您可能会因为查看错误名称空间下的文档而被绊倒;您提供的链接是针对System.Data.Linq.Mapping.TableAttribute该类的,而不是. 中的链接System.ComponentModel.DataAnnotations.Schema。他们怎么敢使用重复的类名!!)

于 2013-05-06T14:39:09.400 回答