1

私はCodeFirstを使用しており、モデルが変更されるたびにデータベースにテストデータを導入しています。次のことを行うと問題が発生します。

 context.News.Add(new News
            {
                Id = 3,
                NewsTitle = "title",
                NewsImage = "thumb.jpg",
                NewsText = "text",
                Venue = @"<iframe width=""1000"" height=""350"" frameborder=""0"" scrolling=""no"" marginheight=""0"" marginwidth=""0"" src=""https://maps.google.ro/maps?hl=ro&amp;ie=UTF8&amp;t=h&amp;ll=46.778815,23.614479&amp;spn=0.002572,0.010718&amp;z=17&amp;output=embed""></iframe>"
             });

私も二重引用符の代わりに\を試してみました...まだ何もありません。問題は、ページの「会場」を使用すると、プレーンテキストとして表示されることです。

<div style="margin-top: 10px;">
     @News.Venue
</div>

HTMLとして取得するにはどうすればよいですか?

4

2 に答える 2

1

使用する

@Html.Raw(News.Venue)

News.Venueこれは、エンコードされていない生のHTMLで出力されます。詳細については、MSDNのHtmlHelper.Rawを参照してください。もちろん、サードパーティからのコンテンツである場合は、のコンテンツに注意し.Venue、スクリプトや不要なコンテンツからコンテンツをサニタイズすることをお勧めします。

于 2013-03-26T13:59:37.057 に答える
0

HTMLでエンコードされ、レンダリング時に再度エンコードされるべきではない文字列を格納するように設計された特定のMvcHtmlStringクラスがあります。

于 2013-03-26T14:25:33.550 に答える