在当地这一切都运行良好.它们输出到bin目录,并运行正常.
然而,在将软件部署到运行IIS的服务器时,迁移失败,因为它突然期望文件相对于根.当我将它们复制到那里时,迁移工作正常.
如何使用DbMigration.sqlfile使其在本地和服务器上正确运行?
解决方法 如果给出了相对路径,则sqlfile方法使用CurrentDomain.BaseDirectory.解决方法是自己映射路径并给出方法的绝对路径.解决方案如下所示:var sqlfile = "MigrationScripts/script1.sql";var filePath = Path.Combine(GetBasePath(),sqlfile);sqlfile(filePath);public static string GetBasePath() { if(System.Web.httpContext.Current == null) return AppDomain.CurrentDomain.BaseDirectory; else return Path.Combine(AppDomain.CurrentDomain.BaseDirectory,"bin");}
BasePath解决方案取自:Why AppDomain.CurrentDomain.BaseDirectory not contains “bin” in asp.net app?
总结以上是内存溢出为你收集整理的c# – 基本目录中的DbMigration.SqlFile差异全部内容,希望文章能够帮你解决c# – 基本目录中的DbMigration.SqlFile差异所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)