2017-12-03 16 views
-3

エンティティリレーショナルデータベーステーブルから来ている単一の値にアクセスしようとしています。私はviewbagに渡していますが、間違った構文のため、私のMVCビュー内のビューバックには作用しません。私はサブリレーショナルテーブルの値を正しく取得していることを知っている画像を見てください。ビューからのリレーショナルデータへのアクセス

picture

コントローラー: 公共のActionResult ProductEdit(int型のID)

{ 
     using (BlexzWebDbEntities db = new BlexzWebDbEntities()) 
     { 
      ViewBag.Product = db.Products.Where(x=>x.ProductId == id).FirstOrDefault(); 
      return View(); 
     } 
    } 

MVCビュー:あなたはこのためにviewbagを使用したいModel.Ifに使用する必要があります

Category: @ViewBag.Product.Categories.CategoryName <br /> 
+2

このスクリーンショットでは、プロパティの名前が「カテゴリ」であるように見えますしかし、あなたは 'Categories'というプロパティにアクセスしようとしています。ちょうどタイプミス? – David

答えて

-1

あなたが直接あなたのviewbagに値を渡すことができ

var Data = db.Products.Where(x=>x.ProductId == id).FirstOrDefault(); 
    ViewBag.Product= Data.Categories.CategoryName; 

あなたの見解では

Category: @ViewBag.Product <br /> 
-1

アクション、ViewDataを使用します。リストは

使用を返す

Product.Categories場合> ViewBag.Product.Categories.First()。カテゴリ名はあなたのコードで

関連する問題