将ImpromptuInterface从6.2.2升级到7.0.1后方法缺失如何解决
ImpromptuInterface 6.x升级到7.x API不兼容解决方案
ImpromptuInterface 7.0+版本对原有静态API做了重构,原来Impromptu静态类下的InvokeGet、GetMemberNames方法均调整了所属类,业务逻辑本身没有变化,只需调整调用方式即可:
GetMemberNames方法迁移到了ImpromptuHelper静态类下,调用参数保持不变InvokeGet方法调整为Dynamic静态类下的同名方法,调用参数保持不变
调整后的代码如下:
if (ImpromptuHelper.GetMemberNames(sourceObject).Any(x => x == newPropertyPath)) { var newSourceObject = Dynamic.InvokeGet(sourceObject, newPropertyPath); }
请确保代码文件头部引入了对应命名空间:
using ImpromptuInterface; using ImpromptuInterface.Dynamic;
若你还用到了其他原Impromptu静态类下的API,出现找不到定义的问题时优先在ImpromptuHelper和Dynamic两个类下查找对应方法即可,绝大多数方法仅调整了所属类,参数、返回值、执行逻辑均和6.x版本保持一致,无需修改业务实现。
内容的提问来源于stack exchange,提问作者Bronzato
相关产品推荐
相关产品推荐

