ASP.NET Coreチュートリアル(Razorページアプリの作成)
はじめに
以下のサイトを参考にチュートリアルを行いました。 docs.microsoft.com
環境
アプリケーションを作成
1.ディレクトリを作成
ASP.NET Core Web のテンプレートを「RazorPagesMovie」ディレクトリへ作成
# ターミナル dotnet new webapp -o RazorPagesMovie
2.開発証明書を発行する
# ターミナル dotnet dev-certs https --trust
すでに証明書発行済の場合は 「A valid HTTPS certificate is already present.」とターミナルに表示されます。
3.モデルを追加する
- Modelsフォルダを作成し、その配下にMovieクラスを作成する
# ターミナル mkdir Models touch Models/Movie.cs
- Movie.csを修正する
# Model/Movie.cs using System.ComponentModel.DataAnnotations; namespace RazorPagesMovie.Models { public class Movie { public int ID { get; set; } public string Title { get; set; } = string.Empty; [DataType(DataType.Date)] public DateTime ReleaseDate { get; set; } public string Genre { get; set; } = string.Empty; public decimal Price { get; set; } } }
4. NuGet パッケージと EF ツールを追加する
NuGetパッケージ・・・モジュールをDLやインストールができるパッケージマネージャ
EF ツール・・・Entity Framework Coreの拡張コマンドである「dotnet ef」を使えるようにする
- 下記のコマンドを実行して、ツールやパッケージをインストール
# ターミナル dotnet tool uninstall -g dotnet-aspnet-codegenerator dotnet tool install -g dotnet-aspnet-codegenerator dotnet tool uninstall -g dotnet-ef dotnet tool install --global dotnet-ef dotnet add package Microsoft.EntityFrameworkCore.Design dotnet add package Microsoft.EntityFrameworkCore.SQLite dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design dotnet add package Microsoft.EntityFrameworkCore.SqlServer
- 下記のコマンドを実行して、上記ツールのパスを通す
# ターミナル cat << \EOF >> ~/.zprofile # .NET Core SDK tools export PATH="$PATH:/Users/ユーザー名/.dotnet/tools" EOF
5.Movieに対してCRUD用のページを追加
# ターミナル dotnet-aspnet-codegenerator razorpage -m Movie -dc RazorPagesMovieContext -udl -outDir Pages/Movies --referenceScriptLibraries -sqlite
6.ビルド
command + shift + b
7.ローカルへアクセスして確認
F5を押して、「https://localhost:port/movies」にアクセスし エラーがないことを確認します。
作成
編集
詳細
削除
今回発生したエラー
- エラー内容
「the type or namespace name 'razorpagesmoviecontext' could not be found」 - 解決策
エラーが発生したクラスの上部に以下を追加し解決しました。
using RazorPagesMovie.Data;