Передача объектов в качестве параметров методам ActionResult в ASP .Net MVC из настольного клиента - PullRequest
1 голос
/ 03 апреля 2009

С учетом следующего кода:

using (var client = new WebClient())
  {
    string url = string.Concat(someUrl, "SomeControllerName/", currentId, "/WriteLogFile");
    var toWrite = DateTime.Now

    /* Code to post object to URL goes here e.g. client.UploadValues(url, someNameValueCollectionObject)*/
  }

И подпись метода контроллера:

public ActionResult WriteLogFile(DateTime date, int id)

Как я могу заставить первую часть кода передавать объект DateTime этому методу ActionResult?

Ответы [ 2 ]

1 голос
/ 05 апреля 2009

вы можете использовать строку формата для даты

string url = string.Format("someUrl/SomeControllerName/WriteLogFile/{0}/{1}", currentId, DateTime.Now.ToString("MM-dd-yyyy"));

и добавьте запись в таблицу маршрутов, чтобы направить ее в соответствующий контроллер и выполнить действие

routes.MapRoute("SomeRoutename",
                "SomeControllerName/WriteLogFile/{id}/{date}",
                new {   controller = "SomeControllerName", action = "WriteLogFile", 
                        date= DateTime.Now});
0 голосов
/ 03 апреля 2009

Добавить параметр строки запроса:

var toWrite = DateTime.Now;
string url = string.Concat(someUrl, "SomeControllerName/", currentId, "/WriteLogFile");
url = string.Concat(url, "?date=", toWrite.ToString("s"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...