我今天看到了有关实现SqlAzureExecutionStrategy的帖子:

http://romiller.com/tag/sqlazureexecutionstrategy/

但是,我可以找到的所有示例都使用从DbConfiguration继承的Configuration。我的项目使用的是EF6代码优先迁移,它创建的配置继承自DbMigrationsConfiguration。此类不包含SetExecutionStrategy的定义,并且我找不到实际将SqlAzureExecutionStrategy(或任何SetExecutionStrategy)与DbMigrationsConfiguration结合在一起的示例。

能做到吗?

最佳答案

如果还有其他人遇到这个问题,这就是我们的想法:

创建一个继承自DbConfiguration的自定义类(具有SetExecutionStrategy):

public class DataContextConfiguration : DbConfiguration
{
    public DataContextConfiguration()
    {
        SetExecutionStrategy("System.Data.SqlClient", () => new SqlAzureExecutionStrategy());
    }
}


然后将此属性添加到您的DataContext中,并指定要使用您的自定义类:

[DbConfigurationType(typeof(DataContextConfiguration))]
public class DataContext : DbContext, IDataContext
{
    ...
}

关于entity-framework - 使用DbMigrationsConfiguration将SetExecutionStrategy设置为SqlAzureExecutionStrategy?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26064655/

10-13 06:44