VS 2017開發ASP.NET Core Web應用過程當中發現的一個重大Bug

  今天試着用VS 2017去開發一個.net core項目,想着看看.net core的開發和MVC5開發有什麼區別,而後從中發現了一個VS2017的Bug。html

  首先,咱們新建項目,ASP.NET Core Web應用程序,如圖:git

新建好後,咱們按照習慣,在controller文件夾上面,點擊鼠標右鍵,添加控制器...,出現了以下界面:github

 

這個對話框什麼意思呢?怎麼會提示添加依賴項呢?按理來講,咱們直接調試運行,項目就跑起來了!!!測試

先無論他,咱們直接點擊添加,而後稍等一下子,等他添加依賴。完成後,出現下面這個頁面:spa

 

 

大概看了一下,項目中實際上 都已經配置好了,無論他咱們繼續。.net

而後,咱們再次右鍵 -> 添加控制器...,如圖:調試

 

 

咱們輸入UserController,此次成功的添加了控制器,咱們在View()上面,點擊鼠標右鍵,看到以下菜單:htm

 

 

這個時候,咱們發現,並無咱們想要的「添加視圖...「菜單,我看過一些其餘人的教程,他們都是本身手動到Views目錄添加的。blog

好吧,那就添加吧,添加完運行了一下,結果是正確的。教程

這個時候,我看了一下項目默認生成的HomeContorller,發現一個問題,這裏面的View()上面點擊右鍵菜單,居然有「添加視圖...」這個菜單,如圖:

 

 

並且,鼠標放到View()上面,還會顯示視圖的路徑,如圖:

 

 

可是,到咱們新建的UserController裏面,什麼都沒有,這是不合理的,確定是咱們哪裏操做的不對,纔會形成這樣的狀況。

因此,通過一番研究,我發現一個問題,咱們經過右鍵 -> 添加新項...,對話框中選擇以下的控制器(ASP.NET Core),建立的出來的控制器,右鍵菜單會出現」添加視圖...「,如圖:

 

 

 

因而,我愉快的點擊右鍵 ->添加視圖...,完成了操做,結果也正如咱們所料,VS2017自動新建了目錄和cshtml文件。

 

可是,咱們回來看,控制器裏面的View()仍是顯示紅色,並不像HomeController中那樣;這說明,VS2017並無識別咱們新建的視圖。

恰好個人電腦安裝的有Resharper,我鼠標放過去出現下面提示,如圖:

 

因而,我選擇了第一個,添加了視圖,發現,此次纔是徹底對了,和HomeController中如出一轍了。

沒有安裝Resharper的,你們能夠經過如下方法添加視圖,

1.按照控制器添加好文件夾,這裏是Test.

2.在新建的文件夾上面,鼠標右鍵 -> 添加新建項...,出現以下對話框:

 

 

輸入對應的方法名便可。

 

總結:

  從上面的操做種種跡象發現,VS2017這裏的右鍵菜單是錯誤的,默認添加的都是MVC5的控制器和視圖,因此纔會出現添加MVC依賴項那個對話框。因而我又從新新建了一個項目測試了一下,發現那個「添加MVC依賴項」的對話框沒有出現。

後面你們開發時,要記得用正確的方式添加控制器,至於視圖,仍是要手動添加的,若是有Resharper則按下Alt +Enter鍵,回車便可。但願微軟早日修復這個Bug。

 

 做者:雲霏霏

.NET QQ交流羣:243633526    安卓QQ交流羣:227526925   更多類型交流羣敬請期待!

 博客地址:http://www.cnblogs.com/yunfeifei/

 Github地址:https://github.com/yunfeifei

 聲明:本博客原創文字只表明本人工做中在某一時間內總結的觀點或結論,與本人所在單位沒有直接利益關係。非商業,未受權,貼子請以現狀保留,轉載時必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接。

若是你們感受個人博文對你們有幫助,請推薦支持一把,給我寫做的動力。

相關文章
相關標籤/搜索