2011-06-23 41 views
0

我目前正在使用实体框架4编程ASP.NET MVC3应用程序。控制台项目是否可以重用MVC3 EF4项目中的代码(在相同的解决方案中)?

某些任务(例如处理10K +记录)必须在后台运行。我正在编写一个控制台应用程序来完成这项工作(也可以将它作为线程或窗口服务运行)。

两个控制台应用程序和MVC3 EF4项目

既然我已经写了很多的MVC3应用程序内的服务和型号代码的,我想重用,在我的控制台项目。

这可能吗?

(由于时间关系,我不能重构我们的服务变成另一个DLL /代码库)

+0

为什么不将您的服务和模型代码移动到两个项目之间共享的库项目中。 –

+0

时间限制。我应该在开始之前完成它(客户端在最后一分钟添加了对批处理作业的需求,并且我需要它像“尽快!”),并且我太新以至于无法在EF4中使用代码库中的EF4因为我遇到的每一个教程和书都有一个项目的一切。 – Extrakun

回答

2

移动服务和模型代码到另一个DLL不应超过10分钟以上,如果。如果您不想更改命名空间,您甚至不需要 - 只需创建新项目,移动文件,从控制台项目和MVC项目中添加对类库的引用,并且您应该完成。

+0

几个简短的问题 - EF4生成的模型应该在代码库中吗?如何设置代码库以连接到EF4? – Extrakun

+0

@Extrakun:你想让这两个项目都能看到模型吗?如果是这样,把它放在类库中... –

2

这取决于您如何构建MVC系统以及您要在控制台应用程序中使用哪些部分。

例如,如果您要在控制台应用程序中重复使用Controller逻辑,您需要提供许多类的假实现。例如HttpContextBase

此外,如果您有使用Session,Cache,HttpContext您将难以使用控制台应用程序的代码库。

相关问题