我一直在做大量的研究,试图找到与我的 ASP.NET MVC3 应用程序交流批量分配 POST 请求的最佳方式,但没有取得多大成功。
场景如下:
就像我提到的,我有一个带有标准 REST 方法的 ASP.NET MVC3,我试图用它与桌面应用程序(另一个内部编写的应用程序)进行通信。作为一个原型,我们只是通过WebClient使用暴力 XML 文档上传,然后让 MVC3 应用程序解析 XML 文档。为了保持这种行为,我们必须不断地构建多种方法,一种用于 XML 文档解析,另一种用于网站上的标准模型使用。如果可以的话,我想远离它。
经过我所有的研究,我遇到了RestSharp,我想知道是否有办法使用 RestSharp 处理批量分配 POST 请求。我希望能够执行以下操作:
在 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);
}
}
谁能给我任何关于如何实现这一目标的指示?