0

所以我有一个 Windows 窗体应用程序,它具有一些依赖于第三方商业库的高级功能。基本上我想实现这个库的折扣版本,然后在大型商业库不可用时将其用作故障转移,以便基本应用程序中的所有功能都可用,(如果你有它看起来更好/性能更好商业图书馆)。

在 Python 中,您可以执行以下操作:

try:
    import <dependency name>
except ImportError:
#   The dependency is unavailable.

C#中是否有类似的功能?我尝试过类似的方法(在 try/catch 块中包装 using 语句),但这根本不起作用。

4

1 回答 1

0

这取决于您所说的功能,如果是 GUI 组件等,则更加棘手。

如果它只是非可视代码和类,那么您通常可以使用接口之类的东西将功能抽象到更高级别,然后根据需要加载相关实现。

我以前用 IoC 做过这种事情,它对我们来说效果很好。

于 2013-04-24T10:34:28.450 回答