我有一个用 C# 编写的 .net 网站,它将提供其他开发人员可以使用的功能。所以我会做一些默认实现,开发人员可以覆盖一些方法
示例:我有一个类ShoppingCart
和一个类Product
,该类产品有一个方法getProductPrice
,购物车将调用getProductPrice
计算购物车总价的方法
和在同一个项目中ShoppingCart
,Product
我会给开发人员.dll,这样他们就不能更改源代码,所以我们可以稍后更新程序集
所以他们需要制作另一个项目并扩展产品类并覆盖方法getProductPrice
,以便他们可以在那里实现自己的逻辑问题是购物车不会调用扩展方法而是原来的
如果我们已经为开发人员创建了一个扩展项目,并且购物车将调用扩展方法,那么我们就有一个循环引用,因为扩展产品需要对产品的引用,而购物车需要对扩展产品的引用
部分类也不起作用,因为我们只能在同一个程序集中使用部分类
有人有建议吗?
提前致谢。