Help us understand the problem. What is going on with this article?

ASP .NET Core Tips - あるスキャフォールディングアイテムが表示されない

概要

ASP .Net CoreでWebサービスを作る手順や作ってる際にハマったこととその解決策を
備忘録として書いています。
今回もタイトルの通り、とあるスキャフォールディングアイテムが表示されず困った話と
その解決策。

環境

Windows 10
Visual Studio 2019
ASP .Net Core 2.2

現象

プロジェクトテンプレート「ASP .NET Core Webアプリケーション」の
Webアプリケーション(モデル ビュー コントローラー)で作成したプロジェクトで
発生しました。

ソリューションエクスプローラを表示し、プロジェクトツリー内のControllersフォルダを
右クリックし、メニューから追加→新規スキャフォールディングアイテムを選択します。

以下のような画面が表示されるのですが・・・

image.png

そう、「Entity Framework を使用したビューがある MVC コントローラー」の項目が
見当たらないんです。

対処方法

Visual Studio本体なのか、Microsoft.VisualStudio.Web.CodeGeneration.Designのバグなのか
ちょっとよくわかりませんが、どうやら以前VS2017でも発生していたみたい。
https://stackoverflow.com/questions/55082446/vs2017-not-showing-mvc-controller-with-view-using-entity-framework

プロジェクトにPagesフォルダがあると、
なぜか「Entity Framework を使用したビューがある MVC コントローラー」が
表示されないとのこと。

確かに自分のプロジェクトにもPagesフォルダがあり、
このフォルダを削除したらアイテムが表示されました。

image.png

スキャフォールディングアイテムの、
「Entity Frameworkを使用するRazoreページ(CRUD)」を追加すると、
Pagesフォルダが追加されるんですよね。

自分のプロジェクトにPagesフォルダがあったのは、
間違って「Entity Frameworkを使用するRazoreページ(CRUD)」を追加したためでした。

何か地味にハマる問題でした・・・。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away