「Visual Studio 2017でWebアプリケーションをビルドする」(Philip Japikse、Kevin Grossnicklaus、Ben Dewey)が読んでいます。 Entity Frameworkコアを使用してカスタネット実行戦略のクラスを作成しようとすると、エラーCR0246が発生します。「型または名前空間の名前 'ExecutionStrategyContext'が見つかりませんでした(使用するディレクティブまたはアセンブリ参照がありませんか?)」VS2017とEntity Frameworkコア2.0のカスタム実行戦略エラー
テキストには、SystemとMicrosoft.EntityFrameworkCore.Storageのみが必要な参照であることのみが記載されています。 EF Core 2.0のドキュメントはテキストと一致しているようですが、エラーが出ることはありません。
注:私は2.0を使用しています一方、本はCoreおよびEF 1.1を使用しています。しかし、私は、これが問題であることを示唆する文書には何も見ません。クラスは次のとおりです。
using System;
using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.EntityFrameworkCore;
namespace SpyStore.DAL.EF
{
public class MyExecutionStrategy : ExecutionStrategy
{
public MyExecutionStrategy(ExecutionStrategyContext context) :
base(context, ExecutionStrategy.DefaultMaxRetryCount, ExecutionStrategy.DefaultMaxDelay)
{
}
public MyExecutionStrategy(ExecutionStrategyContext context, int maxRetryCount, TimeSpan maxRetryDelay) :
base(context, maxRetryCount, maxRetryDelay)
{
}
protected override bool ShouldRetryOn(Exception exception)
{
return true;
}
}
}
VS2017では、ExecutionStrategyContextの両方のインスタンスが問題として強調表示されています。私はそれらを 'ExecutionStrategyContext context'の代わりに 'ExecutionStrategy context'に変更しようとしましたが、これは私が望んでいるとは思わないし、私の最初のパラメータはcontextなので、まだエラーが出ます。どんな助けもありがとう!ありがとう!
働いていました!本当にありがとう! –