asp.net mvcを起動するときに教えていることは、これらの間違いを避けるために何かを強調していますか?asp.net mvc
答えて
- 使用Html.Encodeから離れて自分の意見に
避けロジックを入力しますどこにでもデータを印刷します。そうしないと良い理由がない限り、XSSについて心配する必要はありません
- ご意見もしくはJavaScriptにルートをハードコードしないでください - 彼らはいくつかの点で変更するつもりだ、Url.Actionを(使用)の代わりに
- は、MVCは何の銀ではありません
- 部分図を使用することを恐れてはいけませんそれが実際にあなたの問題を解決するのに最適なツールであるかどうかを最初に評価してください。
パターンの「ユニットテスト」の部分を忘れないでください。コントローラの
名:)
ユニット・テスト・パターン
は結合Formsコレクション、使用モデルを使用しないでください。
ViewDataを使用しないでください。ViewModelを作成してください。
ビューにループまたはifがある場合は、HTMLヘルパーを作成します。
優しさ、
ダン
常にコントローラとビューの間でデータを渡すためのViewModelを使用してみてください。 モデルを渡すことはできますが、突然、モデルを編集するためのいくつかのオプションを備えたリストボックスが必要です。メッセージを表示すると(検証メッセージではない)、アイテムをViewDataは、魔法の文字列をキーにして、アプリのメンテナンスを難しくしています。 ViewModelで解決するセキュリティ上の問題もあります。例えば :
class user:
int id
string name
string email
string username
string password
あなたのビューせ、ユーザが
public ActionResult Edit(User user)
{
--persist data
}
誰かがあなたのフォームを改ざんして、新しいパスワードとユーザー名を投稿することができ、アクションに彼の名前と電子メールや投稿を変更だとあなたがする必要があります。 DefaultBinderの動作には非常に注意してください。あなたのようなビューモデルを使用している場合 は今、:
class userEditViewModel:
int id
string name
string email
問題がなくなっています。
ことが可能であるときはいつでも)(あなたのビューが
のHttpContext
Steve SandersonsプロASPを取得します。Sourcecode
にNET MVCフレームワーク
デバッグコントローラが脂肪1になり、あまりにも多くの仕事をさせてはいけません。私は過去に1000 +ラインコントローラを見てきましたが、何が起こっているのかを理解するのは絶対的な悪夢になります。
コントローラのユニットテストを利用して、依存関係が制御され、コードがテスト可能であることを確認します。
jQueryとfancyクライアントスクリプトは、アプリケーションの動作を定義してはいけません。できるだけ慎重に使用し、アプリケーションを強化するようにしてください。
可能な限り部分ビューとHTMLヘルパーを使用すると、ビューが扱いにくくなり、メンテナンスの悪夢となることがありません。
可能であればViewModelを使用してください。
依存関係注入フレームワークを使用して依存関係を処理します(MvcContribには複数のコントローラファクトリがありますが、自分でロールするには十分シンプルです)。
のViewDataを使用する方法を学ぶ(例えば、ホーム、アカウント)
サイトの各セクションの別のコントローラを使用し、TempDataを
れるrenderPartial
- の使用があなたの場合は何を学ぶには単一のパラメータメソッドのidから異なるパラメータ名を持つコントローラメソッドを作成します。新しいルートを作成する必要があります。ちょうど弾を噛んで、id(タイプについては気にしません)を使用してコメントに説明してください。
あなたは
RedirectToAction
とあなたのパラメータに名前を付けることを確認します:return RedirectToAction("DonateToCharity", new { id = 1000 });
はないビューページ
なぜですか?ビューページでjs変数を割り当てる必要がある場合はどうすればよいですか?現在のアイテムのID、または生成されたURL私は大部分のjavascript(関数)が* .jsファイルに含まれていることに同意しますが、多くの変数、ローカライズされたメッセージなど、cshtml/ascxの中で、 –
- 1. ASP.NET MVCで@Transactional in ASP.NET MVC
- 2. ASP.Net VS ASP.Net MVC
- 3. asp.net MVCのカスタムタグMVC
- 4. Spring MVCとASP.NET(MVC?)
- 5. asp.net WebForms&asp.net MVCセキュリティオプション
- 6. ASP.NET 4.0対ASP.NET MVC
- 7. ASP.NET MVCとAngularjsとASP.NET MVCとReactjs
- 8. ASP.NET MVC 3は、Asp.net MVC 3ではデータベース
- 9. asp.net MVC
- 10. asp.net MVC
- 11. ASP.NET MVC
- 12. MVC ASP.NET
- 13. asp.net mvc
- 14. asp.net mvc?
- 15. asp.net mvc
- 16. asp.net MVC
- 17. asp.net mvc
- 18. ASP.NET MVC
- 19. ASP.NET MVC
- 20. asp.net mvc
- 21. ASP.NET MVC
- 22. asp.net mvc
- 23. MVC 3のASP.NET MVC 4テンプレート
- 24. 混在ASP/Asp.NET/ASP.NET MVCサイト
- 25. ハイブリッドASP.NET/ASP.NET MVCアプリケーションのIndex.aspx
- 26. SitecoreとASP.net MVC
- 27. asp.net MVCジェネリック/カスタムビュー
- 28. Asp.net MVCメンバーシップスターターキット
- 29. asp.net mvc exceptions tracing
- 30. ASP.NET MVC、Webformハイブリッド
コミュニティのwikiに、別々のファイルにJavaScriptを入れて? – sshow
誰かが覚えるべきことは、ウィキです! – Isaac
推奨読書:ASP.netのパターンと反パターンについてのプレゼンテーションMVC:http://indomitablehef.com/?p=225 –