私は最大の馬鹿のように感じる - 私はActionResults
だけがクライアントに返されたと思った。このため、コントローラに「ヘルパー」メソッドがロードされていました。MVC私のアプリケーションにおけるセキュリティ上の問題 - ロジックを分離するためのベスト戦略?
URLを使用してアクセスしようとしましたが、私は彼らが到達できるのを見たときにほとんど狂ったと誓っています! ...幸いにも、誰もこれをまだ発見していません。
私は何度も何度も呼び出すことを私が持っているこのような方法の1つは、次のとおりです。
public User GetCurrentUser()
{
User user = db.Users.SingleOrDefault(x => x.UserName == User.Identity.Name);
return user;
}
私はちょうど私のモデルフォルダ内の「ロジック」というフォルダを作成していると私は、コードを分離しようとしています - Iコード、名前空間などを呼び出すための最良の戦略が何であるか不思議に思っていましたか?
上記の例では、私はController
から継承するUser.Identity.Name
を使用しています。これを追加すれば、私はステージ1に戻ります!ダーリンディミトロフへ
おかげで、私は今[NonAction]
属性について知っている - これらのメソッドを追加すると、/セキュリティ上の問題を修正し、私は必要正確を行い、しかし、これらの方法の多くは、異なるコントローラで使用されていると私は知っています私はコントローラからロジックを分離することができれば最高です。私はそれについての最良の方法が何であるかは分かりません。
私はすべての私の髪を引き出す前に、誰かが正しい方向に私を指すことができます!
これらのヘルパーメソッドは何を使用していますか?あなたはそれらを「私的に」できますか? –
@Graham Clark - 私は可能ですが、複数のコントローラで使用したいさまざまなものがあります...現時点では、コントローラ間でコードを複製しており、それらを長時間私は完全にプライベートではないと確信しています:/ – wil