相关疑难解决方法(0)

如何忽略EF 4.3迁移中的表/类

我正在测试EF 4.3(测试版)

我有一些新的类应该生成db表和列.

从一个旧项目我的架构中有一些旧表,我想通过EF访问.声明所有类.为了访问旧表,有一个映射的poco.

db迁移也尝试创建旧表.

如何设置此类/表不是迁移的一部分,而是ef模型的一部分?

xxx.OnModelCreating()    
{
    modelBuilder.Ignore<myOldTableClass>();    
}
Run Code Online (Sandbox Code Playgroud)

从模型中删除整个类.最后我无法通过dbContext使用它进行访问.

我喜欢使用自动迁移.我尽量避免将旧的db表完全迁移到EF类.(是的,我知道有生成器)有120个表,旧的应用程序仍然使用它们.

一些仅与EF(新应用程序)一起使用的新表.有3个常用的表格.那些不应该创建,但通过ef访问.

c# entity-framework entity-framework-4 ef-migrations

10
推荐指数
1
解决办法
1万
查看次数

将数据库视图映射到EF 5.0 Code First w/Migrations

我正在尝试将SQL视图映射到EF 5.0 Code First w/Migrations中的实体,以便在页面上显示一些基本信息,而无需查询多个表以获取该信息(目前需要大约20秒才能加载.不是很好.).我听说有可能这样做,但我无法弄清楚或在网上找到正确的方法.

编辑:要更深入地了解我对此问题的解决方案,请阅读主题的博客文章.

这是我的观点:

CREATE VIEW [dbo].[ClientStatistics]
AS
SELECT       ROW_NUMBER() OVER (Order By c.ID) as Row, c.LegacyID, c.ID, c.ClientName, slc.AccountManager, slc.Network,
                             (SELECT        MAX(CreatedDate) AS Expr1
                               FROM            dbo.DataPeriods
                               WHERE        (ClientID = c.ID)) AS LastDataReceived,
                             (SELECT        MAX(ApprovedDate) AS Expr1
                               FROM            dbo.DataPeriods AS DataPeriods_2
                               WHERE        (ClientID = c.ID)) AS LastApproved,
                             (SELECT        MAX(ReportProcessedDate) AS Expr1
                               FROM            dbo.DataPeriods AS DataPeriods_1
                               WHERE        (ClientID = c.ID)) AS LastReportProcesssed
FROM            dbo.Clients AS c INNER JOIN
                         dbo.SLClients AS slc ON …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework ef-code-first ef-migrations entity-framework-5

9
推荐指数
1
解决办法
1万
查看次数