在py_discover_config()
中执行UWP应用程序非常正常。
使用在DEBUG
中编译的完全相同的代码会崩溃,并显示以下错误消息
RELEASE
在执行此代码时(使用System.PlatformNotSupportedException:
'Dynamic code generation is not supported on this platform.'
和Dapper 1.5.1
)
System.Data.SQLite 1.0.109.2
应用程序的UWP配置如下。此外,错误代码是using (var c = NewConnection())
{
var sql = @"
update settings
set
""value"" = @SetDate
where ""key"" = 'week_date'";
c.Execute(sql, new { SetDate = date }); //<= throws PlatformNotSupportedException
// only on RELEASE not in DEBUG
}
.NET Standard 2.0
为什么它仅在Class Library
上崩溃,以及如何解决?
答案 0 :(得分:2)
Dapper非常基于运行时IL生成,因此基本上不可能更改。运行时IL生成基本上与UWP不兼容。
没有简单的方法可以完成这项工作。
因此:要做到这一点,您需要使用类似dapper但不使用dapper的东西,并使用以下两种替代实现之一:
现在也许更实用的方法是:在这种情况下不要使用dapper。