Restsharpを使用した質量割り当て、POSTリクエスト-MVC3
-
27-10-2019 - |
質問
私は、ASP.NET MVC3アプリで大量の割り当てポストリクエストを伝えるための最良の方法を見つけようとして、多くの研究を行ってきました。
これがシナリオです:
私が述べたように、私は標準的な休憩方法を備えたASP.NET MVC3を持っています。これは、デスクトップアプリケーション(社内で書かれた別のアプリ)と通信しようとしています。プロトタイプとして始めるために、ブルートフォースXMLドキュメントのアップロードを使用しました webclient 次に、XMLドキュメントを介してMVC3アプリケーションの解析を行います。この動作を維持するには、XMLドキュメントの解析用で、もう1つはウェブサイトで標準モデル使用のための複数の方法を常に構築する必要があります。できればそれから離れたいです。
結局のところ、私は出会いました Restsharp そして、RestSharpを使用して大量の割り当ての郵便リクエストを処理するための片道があるかどうか疑問に思っています。次のようなことができるようになりたい:
MVC3アプリで...
public class RegistrationRequest {
public string Email { get; set; }
public string RequestedUserName { get; set; }
public bool Register(string domain) {
// Do registration stuff.
}
}
public class AccountController : Controller {
[Authorize,HttpPost]
public ActionResult Register(IEnumerable<RegistrationModel> models) {
return models.Any(model => !model.Register(this.Url.DnsSafeHost))
? new HttpStatusCodeResult(400)
: new HttpStatusCodeResult(200);
}
}
デスクトップアプリで...
public class RegistrationRequest {
public string Email { get; set; }
public string RequestedUserName { get; set; }
}
public class RegistrationService {
public void CreateUsers() {
List<RegistrationRequest> registrations = new List<RegistrationRequest>();
// list of requested users built up by app
var client = new RestClient(baseUrl);
var request = new RestRequest("Account/Register", Method.POST);
//request.AddAllMyObjects(registrations);
var response = client.Execute(request);
}
}
誰もがこれを達成する方法について何か指針を教えてもらえますか?
解決
ドキュメントを調べた後、 ジョン・シーナン, 、これは現在不可能であることがわかりました。私たちが開発したAPIに特異なリクエストを行うことになりました。これはバックグラウンドで実行されるため、デスクトップアプリのユーザーエクスペリエンスに実際には影響しず、リクエストはとにかく小さく、より簡潔でなければなりません。
これにより、実際に個々のパス/フェールケースでより良い結果を得ることができ、それらを適切に処理できることがわかりました。それは良かったかもしれませんが、この「一度に1つ」のリクエストは、実際には最終的に良くなることが証明されました。