将generatePublisherEvidence设置为false为默认值

3 c# winforms

generatePublisherEvidence 在某些情况下会导致很长的启动时间,我想将其关闭.

使用app.config,我可以通过下面处理它.

<configuration>
    <runtime>
        <generatePublisherEvidence enabled="false"/>
    </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

虽然可以实现,但看起来多余.generatePublisherEvidence默认情况下变为假是更自然的.换句话说,不需要app.config.但我在Visual Studio 2012中找不到任何关于它的设置.

任何帮助将不胜感激.谢谢!

Mik*_*oud 6

您需要将其关闭的原因是因为.NET框架默认情况下将其打开.文档很清楚.

但是,请注意这一点:

在.NET Framework 4及更高版本中,此元素对程序集加载时间没有影响.有关详细信息,请参阅.NET Framework中的"安全更改"中的"安全策略简化"部分.

这是来自相同的文档链接.如果你可以升级到.NET 4+,你可以继续使用它.

  • 根据我今天的经验,在.net 4.6.1中构建了一个应用程序。这有所作为。当generatePublisherEvidence = true时,所有使用EF6的已签名内容都需要一些时间才能启动。我仍在尝试了解原因,但似乎EF6代码尝试与我们的证书签名中暗示的第三方联系。 (2认同)