将表单值设置为C#变量

blazor c# razor

我有一个基本的输入表单,我需要自动将entryDate字段设置为今天的日期,这样当用户点击提交时,数据库将自动填充今天的日期(作为字符串)

<input for="EntryDate" value=@entryDate class="form-control" bind="@ath.EntryDate"/>

@functions{
    EventAthlete ath = new EventAthlete();

    string entryDate = DateTime.Now.ToShortDateString();

    protected async Task AddAthlete()
    {
        await Http.SendJsonAsync(HttpMethod.Post, "/api/Athlete/Add", ath);

    }
}

我会从上面的代码中得到它会使用我的entryDate变量自动填充表单吗?

或者更好的是,有没有一种方法,而不是说ath.Entrydate绑定到那个形式,是否可以在我的Functions@{}自动设置ath.Entrydate

一般承认的答案

此外,如果您至少使用C#6.0,则可以默认属性的初始化值。

public DateTime EntryDate { get; } = DateTime.Now;

热门答案

为EventAthlete创建默认构造函数,并将entryDate属性设置为今天的日期。

public class EventAthlete
{
    public DateTime entryDate { get; set; }
    public EventAthlete() => entryDate = DateTime.Now;
}


许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因