Как связать форму с Нэнси - PullRequest
1 голос
/ 04 июля 2019

Я написал фрагмент кода, создающий форму HTML через C #. Но я хочу, чтобы поля формы были связаны с полем класса после отправки формы. Как я могу это сделать и проверить результат (если поля класса заполнены)? Более того, я не знаю, как проверить код с помощью Postman или Fiddle. Не могли бы вы привести пример? Например, когда форма заполняется через браузер, я не знаю, как увидеть результат, перенаправленный на sent.

HTML-форма,

<form action="sent” method="POST"<br>
    <label for="firstName">First Name Label:</label> 
    <input type="text" title="testTitle" name="firstName" placeholder="First Name" ><br>
    <label for="lastName">Last Name Label:</label> 
    <input type="text" name="lastName" placeholder="Last Name" ><br>
<input type="submit" name = "noname">
</form> 

Нэнси,

Get("/form", parameters =>
{
   // codes to construct the above HTML code
   return Response.AsText(form.ToString(), "text/html");
}

// Received form information (fields)
Post("/sent”, _ =>
{
    testClass receivedData = this.Bind<testClass>();
    return new
    {
        success = true,
        message = $"Record recieved First Name = {receivedData.Name}",
        message2 = $"Record recieved Last Name = {receivedData.SurName}"
    };
});

TestClass,

public class testClass
{
   public string Name { get; set; }
   public string SurName { get; set; }
}

1 Ответ

0 голосов
/ 06 июля 2019

С этим рабочим примером подача заявки должна быть простой.

        Get("/api/base", _ =>
        {
            return Response.AsFile("content/Base.html", "text/html");
        });

Обязательно добавьте папку с содержимым и сделайте файлы внутри копии в выходной каталог, если новее.

убедитесь, что вы правильно закрыли теги. Также ваша форма может просто вызвать сопоставленный API при отправке, как этот

<form action="/api/submit" method="POST">
<br>
    <label for="firstName">First Name Label:</label> 
    <input type="text" title="testTitle" id="firstName" placeholder="First Name"><br>
    <label for="lastName">Last Name Label:</label> 
    <input type="text" id="lastName" placeholder="Last Name" ><br>
    <input type="submit" id = "noname">
</form> 

https://stackoverflow.com/a/53192255

Post("/api/submit”, args =>
{
    //this.Request.Body;
    var r = (Response)"";
    testClass receivedData = this.Bind<testClass>();
    r = (Response)$"Record recieved First Name = {receivedData.Name}" 
    + Environment.NewLine +
    $"Record recieved Last Name = {receivedData.SurName}";
    r.StatusCode = HttpStatusCode.OK;
    return r;
});

Я могу ошибаться, но я думаю, что это потому, что вы используете сброс для ввода.

...