2016-11-28 6 views
1

ここでの問題は、変数 "game"を呼び出すと、変数のコンパイルエラーが返され、割り当てられていないことです。私が理解しているように、新しい値を変数に代入すると、その変数を初期化することになります。これは、最初の左側の変数を意味する代わりエラー "ローカル未割り当て変数の使用"

Games game = new Games() 
{ 
    frames = frames, 
    Pins = pins, 
    Score = Score, 
    player = player, 
}; 

でなければなりません

public class GameController : Controller 
    { 
     // GET: Game 
     public ActionResult Index() 
     { 
      Random rnd = new Random(); 
      int pins = rnd.Next(1, 10); 

      Games game = new Games() 
       { 
       frames = game.frames, 
       Pins = game.Pins, 
       Score = game.Score, 
       player = game.player, 
       }; 

      return View(); 
     } 
    } 
} 

モデル

namespace webBowlingProject.Models 
{ 
public class Games 
    { 
    public int frames { get; set; } 
    public int Score { get; set; } 
    public int Pins { get; set; } 
    public string player { get; set; } 
    } 
} 
+2

同じインスタンス内のプロパティを使用して、新しい 'Games'インスタンスのプロパティに値を割り当てていますか?あなたは何をしようとしているのですか? 'game.frames'、' game.Pins'などが別のインスタンスから来るようにしましたか? –

+0

彼らはモデルから来ており、その意図はそれらをインスタンス化し、ビューで使用して「ゲーム」に関する情報を取り込んで保存することでした – Joshua

答えて

2

は、クラスのプロパティの名前であり、右辺の変数名です割り当てたい値。今すぐあなたがgame.framesまたはgame.Pinsと言うとき、あなたのゲームはそのオブジェクトのプロパティに値を持たないということです。

このコンテキストでは、Visual Studio intellisenseを使うこともできます。 {}の間にカーソルを置いてを押すと、すぐにCTRL + と入力します。と入力すると、ゲームと呼ばれるクラスのプロパティが入力されます。そのうちの1つを選択してタブを押してから=を押して、クラスのプロパティに割り当てる値を入力します。

+0

ありがとうございます。 – Joshua

+0

@JoshuaPearson :)ハッピーコーディング –

関連する問題