2016-12-27 78 views
0

我想使用一个变量,我在我的控制器中设置为src里面的img标记。我直接复制了字符串,它工作,所以我知道我的路径是正确的。但是,我无法弄清楚如何将我创建的变量放到img标签中。ASP.net核心显示变量在一个IMG标记为src

这里是我的控制器:

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(); 
     } 
    } 
} 

这里是我的CSHTML文件

<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

它看起来像您正在使用MVC(模型 - 视图 - 控制器)...你怎么会没有一个模型? –

回答

1

对物业只需使用在外面单引号和双引号:

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

如果你使用的是C#4,你也可以使用ViewBag而不是ViewData

在控制器:

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

然后在视图:

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

+0

谢谢,但现在出于某种原因,我收到了404错误。当我硬编码图像中的字符串显示出来,但是当我使用一个变量时,我得到一个404错误 – Aaron

+0

@Aaron如果你在控制器上设置URL,服务器相对于'〜',那么使用Url.Content来解析视图呈现期间的URL。 – Klinger