gpt4 book ai didi

c# - Petapoco:操作可能会破坏运行时的稳定性

转载 作者:行者123 更新时间:2023-11-30 16:45:38 24 4
gpt4 key购买 nike

我正在尝试使用 Petapoco 的多 poco 查询。

代码在我运行 .NET 4.6.1 的本地机器上运行良好,但在部署到我正在使用的运行 .NET 4.5 的主机时抛出 System.Security.VerificationException

片段来自 PetaPoco/Database.cs:2253

while (true)
{
TRet poco;
try
{
if (!r.Read())
break;
poco = factory(r, cb); // <-- The exception happens here
}
catch (Exception x)
{
if (OnException(x))
throw;
yield break;
}

if (poco != null)
yield return poco;
else
bNeedTerminator = true;
}

“cb”是映射 pocos 的回调,但为了论证,我让它只返回通过的对象:

public Person MapRow(Person person, Category category, Country country) {
return person;
}

我这样调用方法:

db.Query<Person>(
new[] { typeof(Person), typeof(Category), typeof(Country) },
new PersonRelator().MapRow,
sql
);

有什么线索可以说明为什么会抛出这个异常吗?

最佳答案

我认为这是因为托管环境设置为中等信任。因为 PetaPoco 在正常运行时会生成 IL 代码,中等信任的托管环境不会允许它并会抛出异常。

关于c# - Petapoco:操作可能会破坏运行时的稳定性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41735678/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com