質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

ASP.NET MVC Framework

ASP.NET MVC Frameworkは、MVCパターンをベースとした、マイクロソフトのウェブアプリケーション開発用のフレームワークです。

Q&A

0回答

2632閲覧

Asp.Net core MVCでのTempDataのデータが消えてしまう

o_ringo_0909

総合スコア10

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

ASP.NET

ASP.NETは動的なWebサイトやWebアプリケーション、そしてWebサービスを構築出来るようにする為、Microsoftによって開発されたウェブアプリケーション開発フレームワークです。

ASP.NET MVC Framework

ASP.NET MVC Frameworkは、MVCパターンをベースとした、マイクロソフトのウェブアプリケーション開発用のフレームワークです。

0グッド

2クリップ

投稿2018/11/08 12:55

編集2018/11/09 04:38

前提・実現したいこと

下記のような簡単なサンプルを用意してTempDataが使用できるか確かめてみましたが、ブレークポイント1では実際に値が格納されていましたが、ブレークポイント2ではCountが0になりModelにnullが格納されてTempDataが使えない状態です。

この場合のどのように対策するべきでしょうか。
Asp.Net core MVC を使ってまだ日が浅いため手詰まりの状態です。
もし詳しい方いましたらお知恵かしてくだい。Orz

testAのViewからPOST→testBのViewからPOST→tesCといった流れで行いました。
実際にテストを行う前にTempDataを使う前のミドルウェアの設定についても設定し終えている状態です。

ちなみに下記サイトのサンプルも試しましたが正常に動きませんでした。
http://miso-soup3.hateblo.jp/entry/2013/12/14/070356

該当のソースコード

public class HomeController : Controller { public IActionResult testA() { return View(); } [HttpPost] public IActionResult testB() { TempData["test_data"] = "hoge"; ●ブレークポイント1 return View(); } [HttpPost] public IActionResult testC() { var hoge = TempData["test_data"]; ●ブレークポイント2 return View(); } }

補足情報(FW/ツールのバージョンなど)

VisualStudio2017

追記

SurferOnWwwさん質問ありがとうございます。
新しいプロジェクトを作成して、記事の内容を試したら正常に動くことが確認できました。
ですが、はやり今現在自分が作成しているプロジェクトファイルでは同じように設定しても
TempDataが正常に動作しない状態です。
1点きになるのが、下記の内容が 通常は上から表示されるものだと思うのですが、そのままBodyHtmlに表示されています。

Toggle cookie consent banner
Use this space to summarize your privacy and cookie use policy.
Learn More Accept

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/11/09 02:18

参考にされている記事 http://miso-soup3.hateblo.jp/entry/2013/12/14/070356 の Peek とか Keep とかの裏技は置いといて、基本の「確認1」だけやってみてダメ(TempData に保持したはずの "りんご" は表示されない)ということですか?
o_ringo_0909

2018/11/09 04:39

追記しました。確認お願いします。
退会済みユーザー

退会済みユーザー

2018/11/09 05:49

> 今現在自分が作成しているプロジェクトファイルでは同じように設定してもTempDataが正常に動作しない状態です。 ← そう言われても自分には分からないです。質問者さんの方で原因の部分を切り分けていただくほかないと思います。
退会済みユーザー

退会済みユーザー

2018/11/09 05:51

> 下記の内容が 通常は上から表示されるものだと思うのですが、そのままBodyHtmlに表示されています。 ← スクリーンショットを撮ってその画像を貼ることはできませんか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問