問題タブ [spark-view-engine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
611 参照

asp.net-mvc - 代替ビューエンジンを使用する利点は何ですか?

ASP.NET MVCで遊んでいますが、NHamlやSparkなどの代替ビューエンジンがいくつかあることがわかります。私の質問は、なぜ代替ビューエンジンを使用するのかということです。私はこのようなものを持つことの利点を見ていません:

Sparkビューエンジンを使用する(これ以降、Sparkを使用してこれを検証していないため、完全に間違っている可能性があります。コードを文字列として渡すため、Intellisenseを取得できません)。

組み込みのASP.NETMVCテンプレート形式を使用します(ただし、ぶら下がっている中括弧はかなり醜いです)。代替ビューエンジンの使用を検討する「ワニ」タグ(または中かっこがぶら下がっている)が好きではないこと以外に、正当な理由はありますか?それとも、何か新しいものだからかっこいいですか?

0 投票する
7 に答える
5444 参照

c# - ASP.NET MVC 電子メール

フープをジャンプすることなく、ASP.NET MVC ビューを使用して電子メール テンプレートを生成するソリューションです。

フープを飛び越える方法を詳しく説明しましょう。

上記のコードは、現在の HttpContext を使用して新しい Context を偽装し、RenderPartial でページをレンダリングしていますが、これを行う必要はありません。

ControllerContext と .Render を使用した別の非常に詳細なソリューション: ( IEmailTemplateService, Headers/Postback WorkAround ) しかし、より多くのコードでほとんど同じことを行っています。

一方、私は、POST/GET を使用せずにビューをレンダリングするだけで、電子メール コードを介して送信できる単純な文字列を生成するものを探しています。ヘッダーを 2 回投稿したり、一部のデータを偽造したりするなどのエラーが発生しないもの。

元:


以下の私の解決策を参照するか、このリンクをたどってください:

spark を使用した私のソリューション: (12/30/2009) ASP.NET MVC 電子メール テンプレート ソリューション

0 投票する
1 に答える
1077 参照

asp.net-mvc - Sparkビューで流暢なhtmlラムダ式を使用できません

asp.netmvcアプリケーションで流暢なhtmlとsparkviewエンジンを使用しようとしています。適切な基本クラスを割り当て、アセンブリを追加しました。これを行うと、TextBox( "MyProperty")は正常に機能します。ただし、this.TextBox(m => m.MyProperty)を使用しようとすると、以下の例外が発生します。これを引き起こしている可能性のあるアイデアはありますか?

例外:

0 投票する
2 に答える
1355 参照

asp.net-mvc - 入力ビルダー (MVC Contrib) を Spark View Engine で動作させるにはどうすればよいですか?

今日、 MVC Contribに含まれるプロジェクト MvcContrib.Samples.InputBuilders を変換して、 Spark View Engineで動作するように3 時間費やしましたが、これまでのところ変換できませんでした。

この2人がうまくいかない理由を知っている人はいますか?

私が行った変更

InputForm.spark:

Global.asax.cs:

Web.config:

(サンプル プロジェクトから最後の 3 つの名前空間をコピーしました。)

私が得ているエラー

Global.asax.cs で Spark/InputBuilder をセットアップする順序に応じて、2 つの異なる例外が発生します。

最初に InputBuilder をセットアップした場合、次に Spark (上記のコード):

エラー CS1061: 'System.Web.Mvc.HtmlHelper' には 'InputForm' の定義が含まれておらず、タイプ 'System.Web.Mvc.HtmlHelper' の最初の引数を受け入れる拡張メソッド 'InputForm' が見つかりませんでした (不足していますか? using ディレクティブまたはアセンブリ参照?)

最初に Spark をセットアップした場合、InputBuilder は次のようになります。

ビュー 'InputForm' またはそのマスターが見つかりませんでした。次の場所が検索されました。

~/Views/Home/InputForm.aspx

〜/Views/Shared/InputForm.aspx

~/Views/InputBuilders/InputForm.aspx

~/Views/Home/InputForm.ascx

~/Views/Shared/InputForm.ascx

0 投票する
1 に答える
364 参照

asp.net-mvc - MVC Contrib 入力ビルダーと Spark View Engine

Eric Hexter のInput Buildersでは、さまざまなテンプレートがさまざまな厳密に型指定されたモデルを使用しています。たとえば、 Stringuses PropertyViewModel<object>DateTimeuses PropertyViewModel<DateTime>FormusesPropertyViewModel[]などです。プレゼンテーションを構成するすべての要素 (マスター、ビュー、パーシャルなど) が単一のクラスにコンパイルされるため、 Spark View Engineはこれを許可していないようです。

複数のテンプレートを含むビューをセットアップしようとすると、次の例外が発生します。

Only one viewdata model can be declared. PropertyViewModel<DateTime> != PropertyViewModel<object>

viewdata 宣言を 1 つだけ残すと、渡されたモデル項目が必要なものと一致しないという別の例外が発生します。

Input Builders か Spark のどちらかをあきらめなければならないように思えますが、どちらも大好きなので悲しいです。そこで、誰かがすでにこれを理解しているかどうかを確認するために、ここで質問したいと思いました.

ありがとう。

0 投票する
1 に答える
571 参照

asp.net-mvc - ASP.NET MVC で Spark View Engine を使用したフォーム送信エラーで、404 リソースが見つからないのはなぜですか?

私の見解:

/User/EditUserName/2/me

コントローラーのアクション:

戻り View() はリダイレクトされるため、機能していないようです

/ユーザー/編集ユーザー名

404エラーが表示されます。なんてこと?検証に xVal を使用していますが、そのすべてが機能し、ユーザーが入力した情報がボックスに表示された前のページを再表示できません。私が間違っていることを知っている人はいますか?これは私を狂わせています!

編集

これが Spark のバグなのか、一体何が起こっているのかはわかりません。EditUserName.aspx ページを追加するとすぐに、404 エラーが発生しなくなり、ページを再表示しても問題なく正常に動作していますか??? 他の人がこの問題に遭遇していないのはどうしてですか?見つけたものはすべて読みましたが、自分のしていることに何の問題もありません。通常のビュー エンジンで動作するのはなぜですか? ユーザー入力のためだけに他のものを使用することに戻したくありませんが、ここでは他に選択肢がないように感じます。

意見:

0 投票する
2 に答える
430 参照

asp.net-mvc - スパークを使用してビューモデルで空のコレクションを処理する

コレクションが空のときにビューモデルをビューに送信すると、スパークで次のような頭痛の種が発生します。

「model.addresses」が空である可能性があるため、NRE が返されます。

レンダリングの前にコレクションにデータを入力する以外に、これを処理する方法はありますか? 確実にデータが取り込まれるようにカスタム処理が必要なため、これは少し面倒です。スパーク条件属性が機能すると考えていました:

しかし、これらの状況を処理するためのより良い方法があるかもしれないと感じています。

0 投票する
6 に答える
4380 参照

asp.net-mvc - Spark ビュー エンジンで asp.net mvc 2 機能を使用する

CodeBetter.Canvasプロジェクトから最初に開始されたASP.NET MVC プロジェクトを使用しています。ASP.NET MVC 2 に移行しようとしています。Eilon のアップグレード ツールを使用してプロジェクトを正常にアップグレードし、 VS2010 に移行しました (ただし、 .NET 4 にはまだ対応していません)。

私が現在抱えている問題は、spark ビュー エンジンを使用している場合にのみ発生しています。View.spark の関連するコードは次のとおりです (厳密に型指定されています)。

.aspx ビューを使用すると、同じコードが問題なく動作します。

ここでの「EditorFor」の重要なポイントは、ASP.NET MVC 2 の新機能であり、私のプロジェクトでは ASPX ビューでそのヘルパーを使用できますが、Spark ビューでは使用できません。

MVC 2 (および MvcContrib と Ninject) を使用するように Spark をアップグレードしようとしましたが、おそらくおかしくなったものの 1 つであると考えましたが、今のところ運が悪く、まだ同じ動作が見られます。

以下は、Spark の BatchCompiler クラス内からスローされる完全なエラー メッセージです。

動的ビューのコンパイルに失敗しました。(0,0): 警告 CS1701: アセンブリ参照 'System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' が 'System.Web.Mvc, Version=2.0.0.0, Culture=neutral' と一致すると仮定、PublicKeyToken=31bf3856ad364e35'、ランタイム ポリシーを指定する必要がある場合があります c:\inetpub\wwwroot[myproject]\CodeBetter.Canvas.Web\Views[MyEntity]\View.spark(9,16): error CS1061: 'System.Web .Mvc.HtmlHelper' には 'EditorFor' の定義が含まれておらず、タイプ 'System.Web.Mvc.HtmlHelper' の最初の引数を受け入れる拡張メソッド 'EditorFor' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか? ?)

Global.asax の Spark 関連のコードは次のとおりです。

また、別の SO answer で述べたように、spark ビューで System.Web.Mvc.Html を参照しています。

0 投票する
1 に答える
341 参照

asp.net-mvc - Spark ビュー エンジンで潜在的な null をマクロに渡す

次のマクロがあります。

そして、マクロへの呼び出し:

唯一の問題は、一部の状況 (編集ではなくアイテムの作成) で model.Address が null になることです。このため、マクロは実行されないか失敗し、マクロ呼び出しをビューに出力するだけです。

Address が null かどうかに応じて、"" または model.Address.Address1 の値を渡すにはどうすればよいですか? null 演算子 ($!{}) は、このインスタンスでは機能しないようです。