SSIS-实体框架-{Model} .resource.dll丢失

时间:2018-07-20 09:02:32

标签: c# entity-framework ssis entity-framework-6 ef-code-first

我正在写一个带有脚本组件的SSIS包。在此脚本组件中,我试图建立一个实体框架连接,但出现以下错误:

  

无法加载文件或程序集'{Model} .resource.dll'或其依赖项错误之一

{Model}是包含我的EF6代码优先模型的dll。我没有任何{Model} .resource.dll。

如果我在控制台应用程序中运行相同的代码,则它正在运行,并且没有.resource.dll

我使用DBConfiguration来摆脱app.config文件,因为SSIS不支持它。

public class ModelConfig : DbConfiguration
{
    public ModelConfig()
    {
        this.SetDefaultConnectionFactory(new System.Data.Entity.Infrastructure.LocalDbConnectionFactory("mssqllocaldb"));

        this.SetProviderServices("System.Data.SqlClient",
           System.Data.Entity.SqlServer.SqlProviderServices.Instance);

    }
}

1 个答案:

答案 0 :(得分:0)

发现了问题。

SSIS正在将区域设置信息添加到线程。实体框架存在区域设置信息错误。

这有帮助:

public ScriptMain()
{
    System.Globalization.CultureInfo.DefaultThreadCurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
    System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = System.Globalization.CultureInfo.InvariantCulture;
}