这可能根本不可能,但我想在我们放弃这个想法之前我会得到你的回应。
我们在一个解决方案中有 3 个主要项目:接口、逻辑和数据访问。数据访问项目包含所有对象类及其变量和方法。Logic Project 包含包含逻辑方法的类和 2 个处理来自数据访问项目的对象的保存和加载的类。Interface 项目是用户界面,任何需要在此处/不需要在逻辑层中的类和方法。
我们打算保持清晰的分离并保持接口->逻辑->数据访问的通信并以相同的方式返回。这一切都很好,但不幸的是,要让接口理解数据访问类对象及其值被传回,我们显然需要在接口项目中添加对数据访问项目的引用。
希望我还没有失去任何人?
现在显然我们可以允许接口从数据访问项目中读取值,但我们不希望接口项目调用任何方法,因为这些都是通过逻辑层以特定方式处理的。我知道这只是一个设计时问题,但无论如何我们可以将方法设置为不可从某些项目调用?我们不想捕获在运行时调用该方法的项目,因为这为时已晚。
这听起来像是一个矫枉过正的问题,但由于我和我的同事可能不是唯一在将其发布给公司后从事此工作的开发人员,我们希望任何其他开发人员都遵循解决方案和项目的严格准则和结构。我们可以把它全部写下来,并尝试确保他们在开发应用程序之前阅读它,但我们都知道,如果您被紧急要求从事某项工作,则无法保证您有时间阅读其他开发人员技术关于应用程序的规范。
如果您需要更多信息来提出任何解决方案,请询问。
非常感谢大家,
路易斯·拉塞尔