2016-12-30 7 views
1

ASP.NET MVCコアに問題があります。キャッシュがあるようです。またはSQLの実行が完全に終了していません。何も返さないASP.NET MVCコア更新レコードストアドプロシージャ

既に存在するレコードを更新するストアドプロシージャを実行しています(成功すると、isPublishedフラグが0から1に変化します)が、次のページが読み込まれると、isPublished 1に設定します。

Visual Studioでデバッグセッションを再開すると、期待通りに動作します。

私は、おそらくSQLが完全に実行されていない、またはキャッシュされていると感じていますか?

誰でも考えられることはありますか?

答えて

1

私の問題を解決しました。

私のサービスは、startup.csのAddSingletonでした。

services.AddSingleton<IPersonService, PersonService>(); //Needs to be AddScoped 
services.AddSingleton<IPersonRepository, PersonRepository>(); //Also needs to be AddScoped 

この

は一度だけ作成されますシングルトンとして働いていないだろうと すべてののHTTP要求のための同じインスタンスになります。

私たちに必要なのは、すべてのhttp要求の新しいインスタンスです。

また、サービスのスコープがリポジトリと同じであることを確認してください。詳細については

あなたはそれがすべて正しいない場合は、これに任意の修正を行ってください。このページ What is the difference between services.AddTransient, service.AddScope and service.AddSingleton methods in Asp.Net Core 1?

に行くことができます!

希望するもの=)

関連する問題