Razor構文とJavascript
-
27-09-2019 - |
質問
テストとして、作成した概念実証アプリをWebフォームからRazorに変換します。これは、評価できるようにするためです。
これまでに1つの問題が発生し、頭が痛くなっています。クライアント側のJavascriptを生成しています...
Webフォーム ジェネラコディセタグプレ
かみそりの構文 ジェネラコディセタグプレ
コンパイラは、「availableIds.push」行に次のエラーを表示します。
コンパイラエラーメッセージ:CS1525:無効な式の用語 '{'
明らかにC#としてコンパイルしようとしています...しかし、どうすれば停止できますか?
ありがとう、
キエロン
解決
疑似要素<text>
でラップする必要があります。これにより、パーサーがhtmlモードに戻り、JavaScriptがc#ではなくhtmlの一部として解析されます。それが発生する理由は、@for()
がc#ブロックであり、内部で処理されるものはすべて、htmlタグでエスケープされるまでc#と見なされるためです。おそらくhtmlタグは必要ないので、かみそりはモードを切り替えるために<text>
タグを提供します。
asp.net Webフォームの違いに気付いた場合は、<% for
行を%>
で終了してc#モードを終了します。Visual Studio 2010用のかみそり蛍光ペン拡張機能をダウンロードすると、コードがコードとして扱われ、htmlがhtmlとして扱われる時期を確認するのに役立ちます。
ジェネラコディセタグプレ
最新バージョンに更新
さらに読みやすくするために、@:
構文を使用できるようになりました
ジェネラコディセタグプレ
所属していません StackOverflow