我想创建一个分离界面,业务流程和数据库的应用程序。
我的想法是想在不同的界面中重用业务流程和数据库部分。
快速举例......
在第一个项目中,我使用Silverlight作为我的界面 在第二个项目中,我想使用WPF 在第三个项目中,我想使用ASP NET (全部是.NET技术和相同的应用程序)
任何人都可以告诉我应该在业务流程部分使用什么,所以我可以在所有项目中重用业务流程部分吗?
答案 0 :(得分:1)
使用网络服务编写中间层
WCF or .asmx
您可以从您正在寻找的各种UI中调用Web服务
答案 1 :(得分:0)
您可以创建一个名为“BusinessLogic.dll”的dll,其中包含您的所有业务逻辑代码,并在所有项目中引用此dll
答案 2 :(得分:0)
对于业务层,我建议使用WCF(因为所有UI都是.NET,这为您提供了最大的灵活性)。您可以通过以下两种方式之一完成此操作:
您也可以为数据访问层执行类似操作,或者您可以简单地将数据访问层实现为业务层直接引用(没有中间WCF / Web服务)的DLL。但是,使用WCF访问数据层可以在不必在物理上共同定位业务层和数据层方面提供一些灵活性。
您很可能会发现在设计和开发过程中,某些类可以被多个层使用。我通常将它们放入一个单独的程序集中,并根据需要在各个层中引用它,以防止反复编写相同的代码。