2017-04-26 4 views
0

私の最初のプロジェクトの一環として、MVC 5を使用してビュー内に画像とビデオの表示を実装する必要がありました。これは機能していますが、私はこのコードを使用し、画像表示するiframeとイメージコンテナコードの改善MVC 5

:どのようにあなたは、次のコードを改善するために推薦作らなければならなかった、私はパスを提供しないとき場合

<div style="float: none; margin: auto auto 30px auto ;height: 280px; width: 400px; "> 
    <div id="imageContainer"> 
     <img src="~/Images/@Html.Raw(Model.ImagePath)" /> 
    </div> 
</div> 

を、このコンテナは空のままですしかし、イメージが表示されていることを示す画像アイコンが表示されたページ上の空のブロックとして表示されます。ここに表示されている画像が表示されないようにするにはどうすればよいですか?見る?

ビデオコンテナと同じ状況、私は単純にビデオのためのVideolinkとして埋め込まユーチューブのリンクを使用して:私はVideolinkを提供する場合

<iframe [email protected](Model.VideoLink) width="560" height="315" frameborder="1" align="middle" display:block style="margin:auto auto 30px auto"></iframe> 

- それは私がいけない場合、私はエラーを示すコンテナを持って、正常に動作します。入力がない場合、単にそれらのコンテナを非表示にする方法はありますか?私はあなたに私はそれをすべてを設定する方法を紹介します

、一つのクラスでそれをすべてMedia

public class Media 
    { 
     public int Id { get; set; } 
     public string title { get; set; } 
     [Required, StringLength(512)] 
     public string description { get; set; } 
     [Required] 
     [AllowHtml] 
     public string body { get; set; } 
     public string ImagePath { get; set; } 
     public string VideoLink { get; set; } 
     public string Source { get; set; } 
     public TagsEnum TagsEnum { get; set; } 
     [Column(TypeName = "datetime2")] 
     [DisplayFormat(DataFormatString = "{0:dd MMMM , yyyy HH:mm}", ApplyFormatInEditMode = true)] 
     public DateTime? NewsDate { get; set; } 

    } 

更新

これは、私はそれがサムのアドバイスを使用してのようになるはずだと思うものです、右?もしそうなら、それはまだ正しい結果を与えていない

@if (!string.IsNullOrEmpty(b.ImagePath)) 
    { 

    } 
    else 
    { 
      <div style="float: right; margin: 10px 10px 25px 25px; height: 100px; width:150px"> 
       <div id="imageContainer">   
        <img src="~/Images/@Html.Raw(b.ImagePath))" style='height: 100%; width: 100%;' /> 
        </div> 
      </div> 
    } 
+0

'@If(!string.IsNullOrEmpty(model.propertyは))' –

+0

は有望な、感謝を探します!しかしそれは行ったのですか?コントローラ?私はASP.Netの初心者です。 –

+0

接頭辞は '@'です。それはそれが剃刀の構文になります。 –

答えて

1
@if (!string.IsNullOrEmpty(b.ImagePath)) { 
    @<div style="float: right; margin: 10px 10px 25px 25px; height: 100px; width:150px"> 
     <div id="imageContainer">   
      <img src="~/Images/@Html.Raw(b.ImagePath))" style='height: 100%; width: 100%;' /> 
     </div> 
    </div> 
} 
+0

はい、このように魅力的です。あなたの助けに感謝。 –