Web和控制台应用程序的一个逻辑实现?

时间:2012-08-21 10:39:47

标签: c# asp.net-mvc console

我是C#console应用程序的新手。

我有一个问题:我想使用Entity Framework创建一个MVC项目,我已经做了一些逻辑将一个表导入另一个表。

现在根据客户要求,我需要为相同的逻辑创建一个控制台应用程序。

现在我的问题是:如何在我的控制台应用程序中使用我的mvc应用程序逻辑?

因此,如果我需要对代码进行任何更改,我必须仅在Web应用程序中进行更改,而不是在控制台应用程序中进行更改。

请建议一个提高我的逻辑效率的好方法

谢谢

2 个答案:

答案 0 :(得分:3)

你最终会得到3个项目;

  • Web应用程序
  • 控制台应用程序
  • 共享图书馆

你要做的是,

  1. 重构共享逻辑,使其存在于单独的方法中,并且不依赖于特定于Web应用程序的任何共享状态。
  2. 测试Web应用程序是否仍然有效。
  3. 取出共享逻辑并将其放入共享库中。
  4. 从您的网络应用程序添加对共享库的引用。
  5. 更改Web应用程序以从Web应用程序调用共享库中的函数。
  6. 测试以确保它仍然有效。
  7. 创建控制台应用程序。
  8. 从控制台应用程序添加对共享库的引用。
  9. 根据需要从控制台应用程序调用共享库中的函数。
  10. 测试以确保其正常工作
  11. 是的,你已经完成了! \ O /

答案 1 :(得分:0)

要详细阐述George的答案,您需要在应用中实施SOC(关注点分离)。 MVC是一个可以帮助你做到这一点的框架,MVP甚至可以成为你案例中更好的解决方案。