ユーザーの権利とデータの取得にどのように適合するかを理解しようとしています。これは、次のような単純な作業ではありません。
GetInvoices where Invoice.UserId = 5
そのため、userId をメソッドに渡すことができますが、それは非常に複雑であり、必要以上に深くしたくないため、混乱を招きます。View は ViewModel でコマンドを呼び出し、ViewMOdel はリポジトリ メソッドを呼び出し、EF を使用してデータをフェッチします。ここで、ユーザー権限に基づいてこのデータをフィルタリングする必要があります。
論理的には、VIewModel はビジネス ルールを強制する必要があります。それは、ViewModel で IQueriable を作成し、それをモデルに渡す必要があるということですか?
というか、やってもいいです
... if (LoggedUser.Role.Permissions.any(x=> x.PErmissionType == somePermission) && ....)
(M)モデル側?