2014-01-24 30 views
2

我期待在this MVC WebApi starter kit(對角/打字稿)MVC的Web API - 準系統最小的項目結構

忽略所有的客戶端代碼,我注意到提交人提出了一個的WebAPI,是非常裸露的骨頭。已經取出了大部分腳手架,包括_ViewStart.cshtml,_Layout.cshtml,並且放棄了Controllers文件夾中的控制器和View子目錄下的控制器名稱相同的子目錄下的視圖等。

他添加了一些有趣的路由和驗證我在Core文件夾中沒有看到過的類,並將Api文件夾中的控制器和Views直接放到根目錄中帶有Index.cshtml的Views文件夾中。

這是一個獨立的web api非常乾淨和準系統的項目結構,除了將數據提供給客戶端的重型應用程序外,它什麼也不做。我喜歡這種方式,但在跳躍之前我想知道這種方法有什麼缺點,如果我真的放棄了這樣做的框架的任何核心功能。例如,顯然MVC區域在這裏被放棄,以支持創建自己的視圖文件夾結構和分離應用程序部分的靈活性(我可以擺脫我很少使用它們的MVC區域)。另一件事是我不認爲一個控制器的操作方法可以return View(),它會按照約定的控制器名稱在Views文件夾中找到它。我也沒問題,因爲我只會提供JSON數據並使用100%客戶端模板。

是否有任何其他核心功能被遺棄,我錯過了,可能會讓我感到遺憾與這個項目結構?

回答

1

當我創建在IIS中託管的Web API時,我的Web應用程序中唯一的文件是web.config,global.asax和global.asax.cs。其他一切都不是必需的。

+0

小心詳細說明你究竟做了什麼? –

+1

@VladimirKocjancic我寫了一篇博客文章,演示如何在這裏http://www.bizcoder.com/the-simplest-possible-asp-net-web-api-template和源代碼https:// github。 COM/darrelmiller/SimpleApiTemplate –