-->

C# 项目模块化出现的循环引用的问题

2020-06-29 09:13发布

问题:

这里有个Windows窗口项目,现在要把他按照模块给划分成项目。

目前划分了4层

界面
||
||
逻辑处理
||
||
模型层

服务端

每一层都是一个项目
现在分离之后,界面 要引用 逻辑处理 这一层实现界面上的功能,但是 逻辑处理要使用界面上的某些组件,比如PictureBox,或者某个窗口,这样就出现了循环引用的情况,但是并不能进行循环引用。

在逻辑处理这块,引用的界面上的组件,在逻辑处理里都是静态的

回答1:

“逻辑处理要使用界面上的某些组件”,此路不通,请绕道而行,我不知道你为什么说逻辑层和UI层分不开,你可能需要再都加一层,参考MVVM模型,再加一层viewMode层吧



回答2:

“逻辑处理要使用界面上的某些组件”,此路不通,请绕道而行。



回答3:

恭喜楼主思考到架构了,逻辑上需要使用界面的话,就反射处理,把他们精简化,做成控件。
可以参考下这篇文章
https://www.cnblogs.com/kiba/p/9753893.html



回答4:

想办法让逻辑处理别引用界面。