【发布时间】:2012-11-28 05:42:51
【问题描述】:
我从 VS2005 升级到 VS2012,专门用于在 .Net 4、.Net 4.5 中编码,并使用 EF5。我是 EF 的新手。我有 Julie 的 EF 书,但它主要讨论的是 EF4 和 POCO,它让我在尝试实施 EF5 时感到困惑。
我的主机目前只允许我运行 .Net 4。我正在尝试在新数据库上使用 EF5。 我首先尝试使用 Code 来生成我的数据库,但我无法让它生成数据库。所以我先创建了数据库,然后用EF5从数据库中生成了模型。我想要的是一个使用 ASP.NET 表单、数据访问层和业务层的分层网站。我打算构建的业务层,因此我可以使用 ObjectDataSource 与一些 Web 服务一起拉入网页以使用级联下拉菜单。
我创建了我的 NameX.edm 模型,但 tt 文件没有相同的名称,它们有 Model1.tt 和 Model1.Context.tt 的名称不同,为什么。 Model1.Context.tt 也是空的。我正在尝试创建运行 EF5 DbContext 的 POCO 类,但我无法让它看到 edm 模型。我在某处读到 EF5 会自动创建 POCO。我在这里没有看到大局。我的问题是我没有使用 .Net4.5 吗?
我有一个 ASP.NET 应用程序项目、一个 EF 项目、一个 POCO 项目,并打算有一个具有业务逻辑的第四个项目。如何正确生成 EF 和 POCO 类?我想要一个分层的应用程序来很好地扩展。下一个问题如何让 POCO 类与业务逻辑对话?我的数据库是 SQL。我习惯于编写存储过程来通过业务逻辑完成所有事情。
【问题讨论】:
-
如果您以 .NET Framework 4 为目标,则默认情况下 EF 不会生成 POCO 实体。我相信 VS 库中有 tt 模板,您可以使用它们来替换默认代码生成策略来生成 POCO 而不是基于 EntityObject 的实体。寻找 DbContext 生成器。