タグ付けされた質問 「razor」

Razorは、ASP.NET WebページとASP.NET MVC(バージョン3以降)で使用されるテンプレート言語です。HTML生成の上に抽象化のレイヤーを追加します。HTMLマークアップとC#またはVBコード間のシームレスな移行をサポートします。マークアップとコード間の遷移は、「@」記号で示されます。

7
ASP.NET MVC Razorビューで改行文字を<br />に置き換えます
入力を受け入れるtextareaコントロールがあります。私は後でそのテキストを単にビューを使用してビューにレンダリングしようとしています: @ Model.CommentText これは値を適切にエンコードしています。しかし、改行文字を置き換えたいのです&lt;br /&gt;が、新しいbrタグがエンコードされないようにする方法が見つかりません。私はHtmlStringを使用してみましたが、まだ運がありません。



4
@ Html.DisplayFor構文とは何ですか?
Razorでは、@ Htmlがリンクや入力などのHTMLを生成するなど、多くの優れた機能を実行することを理解しています。 しかし、DisplayFor関数を取得できません... なぜ私は書くでしょう: @Html.DisplayFor(model =&gt; model.Title) 私が書くことができたとき: @Model.Title

5
cshtmlテンプレートで関数を作成する方法は?
1つのcshtmlファイル内でのみ必要な関数を作成する必要があります。私の状況はASP.NETページメソッドと考えることができます。これは、1つのページにスコープが設定されているため、ページに実装された最小のWebサービスです。HTMLヘルパー(拡張メソッド)については知っていますが、私の関数は1つのcshtmlファイルで必要なだけです。ビュー内に関数シグネチャを作成する方法がわかりません。 注:私はRazorテンプレートエンジンを使用しています。

3
@mediaメディアクエリとASP.NET MVCかみそり構文の衝突
Razorビューエンジンを使用してASP.NET MVCで実行する大規模なサイトを持っています。 サイト全体のすべての一般的なスタイリングを含む基本スタイルシートがあります。ただし、場合によっては、ページ固有のスタイル&lt;head&gt;があります。通常、これは1行または2行です。 私はCSSを&lt;head&gt;厳密に分離していないので特に好きではありませんが、1行または2行は、そのページに固有のものなので、別のファイルを添付して帯域幅を追加する必要はありません。 ページ固有のメディアクエリをに挿入したいの&lt;head&gt;ですが、メディアクエリが@記号と角かっこ{}を使用しているため、かみそりの構文と競合しています。 @section cphPageHead{ &lt;style&gt; /* PAGE SPECIFIC CSS */ ... @media only screen and (max-width : 960px) &lt;-- the @ symbol here is clashing! { ... } } &lt;/style&gt; } これを回避する方法はありますか?


20
MVCかみそりコードを介してEnumメンバーの表示名属性を取得する方法
モデルに「Promotion」というプロパティがあります。そのタイプは「UserPromotion」というフラグ列挙型です。私の列挙型のメンバーには、次のように設定された表示属性があります。 [Flags] public enum UserPromotion { None = 0x0, [Display(Name = "Send Job Offers By Mail")] SendJobOffersByMail = 0x1, [Display(Name = "Send Job Offers By Sms")] SendJobOffersBySms = 0x2, [Display(Name = "Send Other Stuff By Sms")] SendPromotionalBySms = 0x4, [Display(Name = "Send Other Stuff By Mail")] SendPromotionalByMail = 0x8 } …

24
MVC 4 @Scriptsは「存在しません」
ASP.NET MVC 4プロジェクトを作成し、Visual Studio 2012 RCを使用してIndex、CreateアクションとコントローラービューとRazorビューを作成しました。 アプリケーションを実行するようになり、Createビューを参照すると、次のエラーが表示されました。 コンパイラエラーメッセージ:CS0103: 'Scripts'という名前は現在のコンテキストに存在しません 問題は、ビューの下部に自動的に追加された次のコードです。 @section Scripts { @Scripts.Render("~/bundles/jqueryval") } スクリプトが存在しないのはなぜですか? Assembly System.Web.Mvc.dll、v4.0.0.0のベースWebページクラスを見ました 次のヘルパープロパティが利用可能です。 アヤックス HTML URL しかし、スクリプトという名前のものはありません。 何か案は? 編集: 私のWeb.configファイルは次のようになります(Visual Studioで作成されたファイルはそのままです)。 &lt;system.web.webPages.razor&gt; &lt;host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /&gt; &lt;pages pageBaseType="System.Web.Mvc.WebViewPage"&gt; &lt;namespaces&gt; &lt;add namespace="System.Web.Mvc" /&gt; &lt;add namespace="System.Web.Mvc.Ajax" /&gt; &lt;add namespace="System.Web.Mvc.Html" /&gt; &lt;add namespace="System.Web.Routing" /&gt; …
201 asp.net-mvc  razor 

22
Razor Viewが「名前「モデル」は現在のコンテキストに存在しません」をスローします
MVC 4アプリケーションで大幅なリファクタリングを行った後、Razorはビューのデバッグ中にこのエラーを表示します。 名前「モデル」は現在のコンテキストに存在しません。 これは問題のコード行です。 @model ICollection&lt;DataSourceByActive&gt; の使い方@modelが正しいことを知っています。 なぜこうなった?どうすれば修正できますか?

7
_ViewStart.cshtmlレイアウトファイルはどこにどのようにリンクされていますか?
デフォルトのMVC 3テンプレートのAbout.cshtmlは次のとおりです。 @{ ViewBag.Title = "About Us"; } &lt;h2&gt;About&lt;/h2&gt; &lt;p&gt; Put content here. &lt;/p&gt; _ViewStartファイルへの参照がで見つかると思いますがAbout.cshtml、明らかにありません。 私はで見てきたglobal.asaxとweb.config、私はどのように見つけることができないAbout.cshtmlファイルが_ViewStartファイルからレイアウトを「連結」されています。 すべてが期待どおりに機能します。内部で何が行われているのか知りたいのですが...

6
かみそりビューで.cssファイルを参照する方法は?
_Layout.cshtmlファイルに.cssファイルを設定する方法は知っていますが、ビューごとにスタイルシートを適用するのはどうですか? ここでの私の考えは、_Layout.cshtmlには操作する&lt;head&gt;タグがありますが、非レイアウトビューの1つではそうではないということです。&lt;link&gt;タグはどこに行くのですか?
195 css  asp.net-mvc  razor 


2
MVCのHTMLヘルパーによって生成されたHTML要素にクラス属性を追加するにはどうすればよいですか?
ASP.NET MVCは、例えば、HTMLヘルパーを使用してHTML要素を生成することができ@Html.ActionLink()、@Html.BeginForm()そしてそうで。 匿名オブジェクトを作成してフォーム属性を指定し、そのオブジェクトを(この場合は4番目の)htmlAttributesパラメータに渡してid、要素にを指定できることを知っています。 Html.BeginForm("Foo", "Bar", FormMethod.Post, new { id = "MyForm"}) しかし、class属性はどうですか?明らかにこれは機能しません: Html.BeginForm("Foo", "Bar", FormMethod.Post, new { class = "myclass"}) 私のビューが要求されたときにランダムな構文エラーがスローされるのは、C#キーワードが検出された後、他のものが期待されるためですclass。 私も試しました: new { _class = "myclass"} そして new { class_ = "myclass"} ただし、アンダースコアがダッシュに置き換えられるため、これらも機能しませんでした。 HTML要素を手動で記述したり、フォームを内にラップしたり&lt;div class="myClass"&gt;できることはわかっていますが、それがどのように行われるべきかを知りたいと思っています。

10
ビューまたは部分ビューからレイアウトヘッドにCSSまたはJavaScriptファイルを追加する
レイアウトページヘッド: &lt;head&gt; &lt;link href="@Url.Content("~/Content/themes/base/Site.css")" rel="stylesheet" type="text/css" /&gt; &lt;/head&gt; アプリケーションからのビュー(AnotherView)には以下が必要です。 &lt;link href="@Url.Content("~/Content/themes/base/AnotherPage.css")" rel="stylesheet" type="text/css" /&gt; そしてAnotherViewは以下を必要とする部分的なビュー(AnotherPartial)を持っています: &lt;link href="@Url.Content("~/Content/themes/base/AnotherPartial.css")" rel="stylesheet" type="text/css" /&gt; 質問:これらのCSSファイルリンクAnotherViewおよびAnotherPartialリンクをレイアウトヘッドに追加するにはどうすればよいですか? AnotherPageは複数のパーシャルを持つことができるので、RenderSectionは良い考えではありません。すべてのCSSをヘッドに追加しても、動的に変更されるため、役に立ちません(Anotherpagesに依存します)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.