OWIN Katana,Webapi,MVC都在不同的项目中

时间:2014-07-03 16:07:56

标签: asp.net-mvc-5 asp.net-web-api owin katana

我有一个目前正在使用MVC5,WebApi2和OWIN的项目。它已经变得比我预期的要大得多,我正在考虑将它分成单独的项目。我将业务逻辑和数据访问转移到一个新项目,但后来我考虑将webapi和mvc分成另外两个项目。

真的,MVC很少。基本上只是/index.cshtml和/ Help页面。其他一切都是杜兰达尔。我在想是否要将其移出主项目然后我会在托管方面有一些灵活性。看起来应用程序的MVC部分很重,不需要。

然后我会制作一个webapi项目,无论如何,这一切都在发生。

我一直在考虑使用OWIN管道并将webapi包装为中间件,将mvc项目包装为中间件。然后我可以有多个可用于不同配置的启动类。我喜欢这个想法的一件事是webapi和mcv应用程序可以单独使用或一起使用。在任何一种情况下,由于OWIN的性质,它可以自托管或通过IIS运行。

现在我的问题是...... 这真的有意义吗?有可能自行运行webapi服务。在这样的设置中我是否有任何潜在的损失?

感谢。

1 个答案:

答案 0 :(得分:0)

@mnfact: - 我建议你创建两个单独的解决方案,一个是WebApi2,OWIN,另一个是MVC5。这将是很好的设计。请仔细阅读以下链接: - " MVC & Web Api projects within same Solution"

我认为在分别为WebApi和MNV5项目提供身份验证时可能会出现问题。对于datacontext,您必须解决控制器之间的依赖关系。

希望这对你有帮助!