今天在调试插件程序的时候,插件报错,通过系统log日志中发现曝出了"That assembly does not allow partially trusted callers"的异常,因为我的插件里需要调用web api,里面的内容需要进行urlencode编码,所以我就使用HttpUtility.UrlEncode这个方法,后来通过调试才发现是由于使用了这个HttpUtility.UrlEncode方法导致的,我在网上找了一些帖子,发现很多人都遇到过这个问题。
其实想要解决这个问题很简单,只要把HttpUtility.UrlEncode这个方法换成Uri.EscapeUriString或者Uri.EscapeDataString就可以了。
至于Uri.EscapeUriString和Uri.EscapeDataString有什么区别,大家可以上网查一下,如果你想全部转义的话,那么建议使用Uri.EscapeDataString。
参考: