如果在ASP.NET MVC Razor View </dd>中的<dd>内的@ {}中有条件

时间:2014-09-22 19:17:56

标签: asp.net-mvc razor

我在ASP.NET MVC View中渲染图像做了一件简单的事情。我需要使用c#if condition。我正在使用如下:

  <dd>
       @{ byte[] photo = @Model.Photo;
          string imageSrc = null;
          if (photo != null) { }

             //Logic

       }

        <img src="" alt="Image" />       

    </dd>

我得到例外{是必需的。任何帮助?我相信我不需要任何牙套

3 个答案:

答案 0 :(得分:2)

来自there

<img src="data:image/png;base64,@Convert.ToBase64String(Model.Photo, Base64FormattingOptions.None)"
    alt="Image" />   

注意将字节数组转换为base64字符串(Convert.ToBase64String),它可以为您提供所需的字符串。

答案 1 :(得分:0)

好的,这有用

  <img src="data:image/png;base64,@Convert.ToBase64String(Model.Photo,78,Model.Photo.Length-78 ,Base64FormattingOptions.None)"
             alt="Image" />  

答案 2 :(得分:0)

@Debug_mode,我通过创建一个示例mvc应用程序尝试了这个,它适用于我。

<dd>
   @{ 
      byte[] photo = Model.Photo;
      string imageSrc = null;
      if (photo != null) { }
         //Logic
   }

    <img src="" alt="Image" />       

</dd>

注意:如果我们使用C#block @ {..},我们不想使用&#39; @&#39;用于访问@ {....} c#块内的Sever属性,即它应该只是Model.Photo而不是@ Model.Photo。