在visual studio 2013项目中引用ChinaPay的DLL,调用NetPayClientClass类会导致IDE提示警告信息:无法嵌入互操作类型“ChinaPay_NET.NetPayClientClass,请改用适用的接口,随后生成项目失败。后查阅相关资料,只要设置下改DLL的嵌入互操作类型即可。
问题截图:
具体的解决方法是右键引用的dll,点击属性:
找到嵌入互操作类型,将原本的True修改为False就可以了,最后记得重新生成下项目:
会遇到这个问题,主要也是为了开发ChinaPay的支付功能,根据官方文档C#如果要调用支付接口需要引用银联在线的DLL(必须将原先的COM组件转换为DLL),其实这个DLL是个坑,发布网站的时候发现竟然只支持32位系统,还需要把IIS线程池改为32位,否则你在本地测试功能是正常的,发布到IIS上则会报错,具体可以看这篇文章:ChinaPay踩坑笔记二:发布后依然无法支付订单提示错误代码80040154没有注册类
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/98889.html