我在其他文章中读到,您可以将业务逻辑放在"anywhere“VS2013 MVC项目中,我的意思是”可能在控制器文件夹之外“。
但是,当我在我的项目中创建一个App_Code文件夹,并将业务逻辑类放入其中(将build属性设置为编译,而不是Content)时,我会得到以下编译错误,代码编辑器intellisense将无法识别以下内容中的.Caching:
using System.Runtime.Caching;如果我将类移回控制器的子文件夹中,没有问题,.Caching将出现在intellisense中,也不会发生编译错误。
对于为什么会这样,以及如何调整我的项目以允许业务逻辑类在控制器文件夹之外正确操作,我们将不胜感激。
发布于 2014-03-07 03:27:43
App_Code文件夹包含在运行时编译的代码。
请参阅以下参考资料:http://msdn.microsoft.com/en-us/library/t990ks23.aspx
如果您有业务逻辑,最好将其放入外部(从webiste)库中,以增加重用并支持更好的分区化。
发布于 2014-03-07 03:26:22
将业务层类库项目添加到解决方案中,然后将对此业务层类库项目的引用添加到MVC项目。
发布于 2014-03-07 03:27:58
首先,没有像App_Code文件夹那样的MVC文件夹。
为什么?
App_Code的概念是用来与网站项目()一起工作的,但是,MVC是Web应用程序项目,它是一种模式的框架或实现,以更接近于HTTP协议和web请求,并将关注点分离为表示(视图)、请求处理程序(控制器)和模型。所以,不要期望它能与App_Code一起工作
建议
在相同的VS解决方案中创建/添加一个类库项目,您可以保留所有业务逻辑,然后在MVC应用程序中引用该项目
https://stackoverflow.com/questions/22240698
复制相似问题