异常

Microsoft.Data.SqlClient is not supported on this platform.

堆栈跟踪

at Microsoft.Data.SqlClient.SqlConnection..ctor(String connectionString)

at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerConnection.CreateDbConnection()

at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.get_DbConnection()

at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.<OpenAsync>d__47.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.<BeginTransactionAsync>d__38.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.<BeginTransactionAsync>d__36.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.<ExecuteAsync>d__8.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.<ExecuteAsync>d__8.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.<SaveChangesAsync>d__97.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.<SaveChangesAsync>d__101.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.<ExecuteAsync>d__7`2.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at Microsoft.EntityFrameworkCore.DbContext.<SaveChangesAsync>d__54.MoveNext()

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

at TM.Framework.Repository.EFCore.Repository`2.<InsertAsync>d__15.MoveNext() in F:\Personal\Project\Git\Repos\WM\TM.Framework.Repository\DbCore\EFCore\Repository.cs:line 51

at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult()

任务调度创建可收集ACL后,加载任务程序集运行时,执行EF时报异常,且明确指出Microsoft.Data.SqlClient程序集不支持该平台,经测试.Net Core 3.1的网站(aspnet core)和控制台程序,在运行时会自动选用runtime文件夹下的对应dll,即AssemblyLoadContext.Default中加载的分别为:

文件名称:(asp.net core)

\bin\Release\netcoreapp3.1\runtimes\win\lib\netcoreapp2.1\Microsoft.Data.SqlClient.dll

文件大小:1227736 字节

文件版本:1.0.19269.1

修改时间:2019年9月26日 20:43:26

MD5     :0FE582BD41A492D8D583E60AB559EC93

SHA1    :A935CAE85E421960A617FDFAA57738E2A0ACEEF9

CRC32   :A7500F80

文件名称:(.net core console)

\bin\Debug\netcoreapp3.1\runtimes\win\lib\netcoreapp2.1\Microsoft.Data.SqlClient.dll

文件大小:1227736 字节

文件版本:1.0.19269.1

修改时间:2019年9月26日 20:43:26

MD5     :0FE582BD41A492D8D583E60AB559EC93

SHA1    :A935CAE85E421960A617FDFAA57738E2A0ACEEF9

CRC32   :A7500F80

由于任务调度程序加载dll时是从运行目录中寻找并不会查看runtime文件夹,因此导致当前目录里的同名dll被加载,因此抛出开头的异常。

文件名称:(运行目录)

\bin\Debug\netcoreapp3.1\Microsoft.Data.SqlClient.dll

文件大小:330712 字节(偏小)

文件版本:1.0.19269.1

修改时间:2019年9月26日 20:43:28

MD5     :5715D2FA9EDF8C80D8B1209F9C7D3624

SHA1    :993D17482A5ED75CC78E4E6302934DA0D24DAE0D

CRC32   :FC165A30

总结:

复制\bin\Debug\netcoreapp3.1\runtimes\win\lib\netcoreapp2.1\Microsoft.Data.SqlClient.dll里的dll到任务程序的根目录即可。

最新文章

  1. PHP存储blob示例(转)
  2. SpringMVC源码分析系列
  3. easyUI笔记09.03
  4. Unity-WIKI 之 AllocationStats(内存分配)
  5. [BZOJ1998][Hnoi2010]Fsk物品调度
  6. 【VB6笔记-02】从Command中获取链接参数
  7. 使用WBI SAP Adapter 实现IDoc的同步处理(转)
  8. boot/head.S
  9. zoj 3778 Talented Chef(思维题)
  10. java下的第一个redis
  11. Linux PCI网卡驱动的详细分析
  12. 马云收购UC你,至于到底是谁宣战
  13. js原生设计模式——2面向对象编程之继承—多继承
  14. 浅谈java类集框架和数据结构(2)
  15. 讲述Sagit.Framework解决:双向引用导致的IOS内存泄漏(下)- block中任性用self
  16. Java中对List去重, Stream去重
  17. teachable-machine:探索机器学习如何工作,浏览器中实时浏览
  18. 系统磁盘优化——&quot;/var/spool/postfix/maildrop&quot;
  19. JVM(二)垃圾回收
  20. canvas(一) 基本线条绘制

热门文章

  1. ubuntu安装ROBOWARE
  2. 滴水 1.c++类 this指针 笔记+指针
  3. Mybatis Plus 框架项目落地实践总结
  4. Excel操作技巧
  5. 代码随想录算法训练营day08 | leetcode 344.反转字符串/541. 反转字符串II / 剑指Offer05.替换空格/151.翻转字符串里的单词/剑指Offer58-II.左旋转字符串
  6. pytorch学习笔记五之通过示例学习
  7. 一次线上OOM问题分析
  8. 05for循环
  9. ASP动态网页(网站)设计教程
  10. SAP SPOOL_INTERNAL_ERROR