2016-12-27 2 views
0

Ich versuche, eine Variable zu verwenden, die ich in meinem Controller als src innerhalb eines Tags img festlegen. Ich kopierte die Zeichenfolge direkt und es funktionierte, so dass ich weiß, dass mein Pfad korrekt ist. Allerdings habe ich Probleme herauszufinden, wie die Variable, die ich erstellt habe, in das img-Tag platziert wird.ASP.net Kernanzeige Variable in einem Img-Tag für src

Hier ist mein Controller:

using System; 
using System.Collections.Generic; 
using System.Threading.Tasks; 
using Microsoft.AspNetCore.Mvc; 

namespace dojodachi.Controllers 
{ 
    public class HomeController : Controller 
    { 
     // GET: /Home/ 
     [HttpGet] 
     [Route("")] 
     public IActionResult Index() 
     { 
      ViewData["Tree"] = "~/images/regular_tree.jpeg"; 
      return View(); 
     } 
    } 
} 

Hier ist meine cshtml Datei

<div id = wrapper> 
    <p>Fullness: Happiness:  Meals:  Energy</p> 
    <div id = inside> 
     <img src="@ViewData['Tree']" alt="Regular Tree"> //How do I place my variable in this img tag? 
     <p></p> 
    </div> 
</div> 
+0

Es sieht aus wie Sie verwenden MVC (Model View Controller) ... wie kommt man nicht aus ein Model? –

Antwort

1

Nur einfache Anführungszeichen auf der Außenseite und doppelte Anführungszeichen auf dem Grundstück nutzen:

<img src='@ViewData["Tree"]'

Wenn Sie C# 4 verwenden, können Sie auchverwendenanstelle von ViewData.

On-Controller:

ViewBag.Tree = "~/images/regular_tree.jpeg";

Dann auf Ansicht:

<img src="@Url.Content(ViewBag.Tree)"

+0

Danke, aber jetzt bekomme ich aus irgendeinem Grund einen 404 Fehler. Wenn ich hart Code die Zeichenfolge in das Bild zeigt, aber wenn ich eine Variable verwenden, bekomme ich einen Fehler 404 – Aaron

+0

@Aaron Wenn Sie die URL auf dem Controller mit dem Server relative '~' dann verwenden Sie 'Url.Content' zu lösen die URL während der Wiedergabe der Ansicht. – Klinger

Verwandte Themen