私はここで何が欠けていますか?C#7パターンマッチングを使用しないでください
Visual Studioはインラインパターンマッチングを使用するように私に語ったと私のためのコードが再書き込みが、それがないとき、私はエラーを取得する:ここで
Severity Code Description Project File Line Suppression State Error CS8121 An expression of type TReturnState cannot be handled by a pattern of type LightState. DataModels C:\Users\Michael\Documents\windows\GCMS UWP\Models\Models\Elements\Lights\Light.cs 77 Active
は元のコードです:
public override void UpdateState<TReturnState>(TReturnState returnState)
{
var newState = returnState as LightState;
if (newState != null)
State = newState;
base.UpdateState(returnState);
}
そして、VSが私のためにそれをやり直すときの様子はここにあります。
public override void UpdateState<TReturnState>(TReturnState returnState)
{
if (returnState is LightState newState)
State = newState;
base.UpdateState(returnState);
}
調整された方法が好きですが、エラーが発生しています。私は何かを見逃しているのですか、これはバグですか?
パッケージ私が使用しています:7
@SirRufoが、C#での既知のバグのように見えるのコメントで指摘したように
"dependencies": {
"Microsoft.NETCore.UniversalWindowsPlatform": "5.3.1",
"Newtonsoft.Json": "9.0.1",
"System.ValueTuple": "4.3.0"
},
'State =(LightState)newState;' – Hogan
@SirRufo「State」というグローバル変数を更新するのはどのように役に立たないのですか? – Hogan
@Hoganオオプス、あなたは正しいです...:o) –