簡體   English   中英

為什么將類移動到 Visual Studio 中的新文件夾會破壞事情?

[英]Why does moving classes into a new folder in Visual Studio break things?

我有一個包含三個區域的 ASP.NET 應用程序。 在應用程序的根目錄中是一個 Models 文件夾,其中包含一個大雜燴類,包括兩個 DataContext、一些 Repository 類、一些 ViewModel 類、一些幫助程序類和一些業務邏輯類。

我想為這些子類別中的每一個創建子文件夾,並將關聯的文件移動到適當的子文件夾中。 但是,我注意到這是破壞性的。 例如,如果我將其中一個 DataContexts 移動到 Models 文件夾中的 DataContext 子文件夾中,我發現存儲庫中的代碼不再能看到 DataContext 類型。

這一定意味着 Models 文件夾對系統具有特殊意義。 我在這里想念什么? 有沒有辦法讓子文件夾“敏感化”,以便其他代碼仍然可以看到實現的類和命名空間? 還是我以錯誤的方式解決這個問題?

可能是命名空間問題? 模型文件夾沒有特殊含義。

ASP.NET MVC團隊曾說過類似的話:

存在模型文件夾的唯一原因是,人們一直在問我們將模型類放在哪里 ”;

當您拖放文件和文件夾時,它將移動文件,但是名稱空間不會更新,因此您的代碼將中斷。 一種方法是創建新文件/文件夾並復制您的代碼-這有點繁瑣但正確的方法。 另一種方法是使用Resharper-Ctrl + Shift R,它使您可以移動文件並更新名稱空間,並且代碼不會中斷。 我正在尋找一種無需Resharper的更快捷的方法,當我這樣做時,我將更新我的答案。 希望這可以幫助!

在 C# 中邁出第一步我遇到了這篇文章……在 VS 2019 中,如果你refactor->move類文件,你可以選擇移動到另一個位置

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM