我的项目目标框架是.net framework4.5,最近要接入阿里云OSS,他们的sdk目标框架是.net Standard2.0。
写好调用代码后在我的电脑上运行没问题(win10),发布到服务器就报错:
找不到方法:“System.String System.String.Format(System.IFormatProvider, System.String, System.Object)”
服务器是windows server2012
以前没有做过.net core的东西,不知道哪里的问题,求大佬们指点一下
解决了,是因为OSS SDK用了这个方法:
string.Format(CultureInfo.InvariantCulture, "{0:X2}", (int)b),在程序集netstandard里面
而我主程序的string.Format方法在mscorlib里面,并且没有符合上面参数条件的重载
两者有点冲突,我没找到直接解决冲突的办法,就想了个绕路的办法。在SDK里面弃用了string.Format,重新编译后就成功了。