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

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


15
かみそりビューエンジンのエスケープ@文字
Razorをビューエンジンとして使用して、サンプルのASP.NET MVC 3サイトを作成しています。かみそりの構文は、@文字などで始まります@RenderBody()。私のcshtmlページに@testを書くと、解析エラーになります CS0103:「test」という名前は現在のコンテキストに存在しません 「@」文字をエスケープするにはどうすればよいですか?


12
JavaScript内でのRazorの使用
ビュー(cshtml)にあるJavaScript内でRazor構文を使用することは可能ですか、それとも回避策がありますか? Googleマップにマーカーを追加しようとしています...たとえば、これを試しましたが、大量のコンパイルエラーが発生します。 <script type="text/javascript"> // Some JavaScript code here to display map, etc. // Now add markers @foreach (var item in Model) { var markerlatLng = new google.maps.LatLng(@(Model.Latitude), @(Model.Longitude)); var title = '@(Model.Title)'; var description = '@(Model.Description)'; var contentString = '<h3>' + title + '</h3>' + '<p>' + description + …

6
かみそりで(特にHTML属性で)三項演算子を使用するにはどうすればよいですか?
WebFormsビューエンジンでは、特にHTML属性内で、非常に単純な条件に3項演算子を一般的に使用します。例えば: <a class="<%=User.Identity.IsAuthenticated ? "auth" : "anon" %>">My link here</a> 上記のコードは、ユーザーの認証の有無に応じて<a>、authまたはそれにanon応じてタグをタグに付与します。 Razorビューエンジンと同等の構文は何ですか?Razorでは、コードとマークアップにいつ出入りするかを「知る」ためにHTMLタグが必要であるため、現在、次の問題に悩まされています。 @if(User.Identity.IsAuthenticated) { <a class="auth">My link here</a> } else { <a class="anon">My link here</a> } これは、控えめに言ってもひどいです。 私はこのようなことをしたいのですが、Razorでどのように理解するのに苦労しています: <a class="@=User.Identity.IsAuthenticated ? "auth" : "anon";">My link here</a> - 更新: それまでの間、このHtmlHelperを作成しました: public static MvcHtmlString Conditional(this HtmlHelper html, Boolean condition, String ifTrue, String …

7
MVC4のStyles.Render
では.NET MVC4どうするかプロジェクト@Styles.Render作品を? @Styles.Render("~/Content/css")つまり、どのファイルで呼び出されていますか? フォルダ内に「css」というファイルまたはフォルダがありませんContent。

9
MVC 3で現在のページのURLを取得する方法
作成中のブログでFacebookコメントプラグインを使用しています。これには、ページで参照されているFacebookのJavaScriptによって解釈されるいくつかのFBXMLタグがあります。 これはすべて正常に機能しますが、現在の完全修飾URLをプラグインに渡す必要があります。 <div style="width: 900px; margin: auto;"> <div id="fb-root"></div> <fb:comments href="URL HERE" num_posts="10" width="900"></fb:comments> </div> 現在のページのURLを取得する最良の方法は何ですか?リクエストURL。 解決 これが私のソリューションの最終コードです: <fb:comments href="@Request.Url.AbsoluteUri" num_posts="15" width="900"></fb:comments>
360 c#  asp.net  asp.net-mvc  razor 

7
Razorでローカル変数を宣言する方法は?
私はasp.net mvc 3でWebアプリケーションを開発しています。かみそりを使用するビューでは、いくつかのローカル変数を宣言して、ページ全体で使用したいと思います。これはどのように行うことができますか? 次のアクションを実行できることは、かなり簡単なようです。 @bool isUserConnected = string.IsNullOrEmpty(Model.CreatorFullName); @if (isUserConnected) { // meaning that the viewing user has not been saved <div> <div> click to join us </div> <a id="login" href="javascript:void(0);" style="display: inline; ">join</a> </div> } しかし、これは機能しません。これは可能ですか?

6
ASP.NET MVCビューエンジンの比較
私は、ASP.NET MVCで利用できるさまざまなビューエンジンの内訳についてSOとGoogleを検索してきましたが、ビューエンジンとは何かについての簡単な高レベルの説明しか見つかりませんでした。 私は必ずしも「最高」または「最速」ではなく、さまざまな状況で主要なプレーヤー(たとえば、デフォルトのWebFormViewEngine、MvcContrib View Engineなど)の利点/欠点の実際の比較を探しているわけではありません。これは、既定のエンジンからの切り替えが特定のプロジェクトまたは開発グループにとって有利かどうかを判断するのに非常に役立つと思います。 誰かがそのような比較に遭遇しましたか?

23
Razor View Engineを使用したパーシャルビューASP.NET MVC 3の特定のセクションへのコンテンツの挿入
私はこのセクションを私の中で定義しています _Layout.cshtml @RenderSection("Scripts", false) 私はそれをビューから簡単に使用できます: @section Scripts { @*Stuff comes here*@ } 私が苦労しているのは、一部のコンテンツをこのセクション内に挿入する方法です。 これが私のビューページだとしましょう: @section Scripts { <script> //code comes here </script> } <div> poo bar poo </div> <div> @Html.Partial("_myPartial") </div> 部分的なビューScriptsからセクション内にコンテンツを挿入する必要があり_myPartialます。 これどうやってするの?

3
ASP.NET MVC 3かみそりのViewStartファイルで異なるレイアウトを指定するにはどうすればよいですか?
アプリケーションに2つの個別のレイアウトを設定したいのですが。1つはWebサイトのパブリックセクション用で、もう1つはメンバー側用だとします。 簡単にするために、これらの各サイトのすべてのロジックが2つの異なるコントローラーにきれいにラップされているとしましょう。 PublicController StaffController そして、それらはそれぞれ、その下のすべてのビューに対応するレイアウトを持っています。 _PublicLayout.cshtml _StaffLayout.cshtml _ViewStart.cshtmlファイルを使用して、「パブリック」の下のすべてのビュー/アクションがPublicLayoutを使用し、「スタッフ」の下のすべてがStaffLayoutを使用することを指定するにはどうすればよいですか? ありがとう!


5
ASP.NET MVC 3-部分テンプレートvs表示テンプレートvsエディターテンプレート
そのため、タイトルはそれ自体が物語っています。 ASP.NET MVCで再利用可能なコンポーネントを作成するには、3つのオプションがあります(私が言及しなかった他のオプションも考えられます)。 部分図: @Html.Partial(Model.Foo, "SomePartial") カスタムエディターテンプレート: @Html.EditorFor(model => model.Foo) カスタム表示テンプレート: @Html.DisplayFor(model => model.Foo) 実際のビュー/ HTMLに関しては、3つの実装はすべて同じです。 @model WebApplications.Models.FooObject <!-- Bunch of HTML --> それで、私の質問は-いつ/どのようにして3つの中のどれを使うかを決めるのですか? 私が本当に探しているのは、作成する前に自問する質問のリストです。その回答を使用して、使用するテンプレートを決定できます。 ここに、EditorFor / DisplayForで私が見つけた2つの点があります。 HTMLヘルパーをレンダリングするときにモデル階層を尊重します(たとえば、「Foo」モデルに「Bar」オブジェクトがある場合、「Bar」のHTML要素は「Foo.Bar.ElementName」でレンダリングされますが、パーシャルは「 ElementName」)。 たとえばList<T>、ViewModelに何かがある場合は、を使用できます。MVCは、それが@Html.DisplayFor(model => model.CollectionOfFoo)コレクションであることを確認し、各項目の単一の表示をレンダリングするのに十分スマートです(Partialは、明示的なループ)。 DisplayForが「読み取り専用」テンプレートをレンダリングすることも聞いたことがありますが、理解できません-フォームをそこにスローできませんでしたか? 誰か他の理由を教えてもらえますか?3つを比較するリスト/記事はどこかにありますか?

9
ASP.NET MVCでのfavicon.icoの提供
ASP.NET MVCでfavicon.icoを提供する方法に関する最終的な/最良の推奨事項は何ですか? 私は現在次のことをしています。 RegisterRoutesメソッドの最初にエントリを追加します。 routes.IgnoreRoute("favicon.ico"); アプリケーションのルートにfavicon.icoを配置します(これもドメインのルートになります)。 2つの質問があります。 アプリケーションのルート以外の場所にfavicon.icoを配置する方法はありませんか?これは、同じレベルで右そこにかなり不快ビーイングだContentとControllers。 このIgnoreRoute("favicon.ico")ステートメントで十分ですか、またはPhil Haackのブログ投稿で説明されているように、次のことも実行する必要があります。ルート以外のディレクトリでfavicon.icoへのリクエストを見たことがあることは知りません。 routes.IgnoreRoute("{*favicon}", new {favicon=@"(.*/)?favicon.ico(/.*)?"});


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