私はOrder
リソースと、アクションpublic ActionResult UpdateOrder(Order order)
を持っていると言います。 私はREST
APIを作成しようとしています。そして私はこの命令を次の状態に進めたいと思う。部分休憩更新
この目的のために私はステータス変更(メールをいくつか送信したり、ログを取ったり、DBなどにいくつかのものを挿入する)のすべてを行うバックエンドにChangeOrderStatus(string newStatus, int orderId)
というメソッドを持ち、そのメソッドはコントローラアクションから呼び出されます。要するに、注文ステータスの変更は、古いファイルの値を新しいものに置き換えるだけでなく、複雑な操作です。
しかし、私の質問は、例えばpublic ActionResult UpdateOrderStatus(string newStatus, int orderId)
のような新しいコントローラーアクション(ルート)を書いて、ChangeOrderStatus
を呼び出すか、UpdateOrder(Order order)
メソッドのすべてを置くべきですか?例えば、その場合のUpdateOrder(Order order)
方法の一部は次のようになります。
if (order.Status != oldOrder.Status) { ChangeOrderStatus(order.Status, order.Id); }
単一のエントリがあるはずですので、私は最初のアプローチでそれを行うだろうが、一部の人々は第二のアプローチが優れていることを教えてリソースの更新のためのポイント、私の状態の更新や注文リソースに関連する他の更新はUpdateOrder
メソッドにある必要があります...私は正しいアプローチが何であるかわからない...