技術的にはこの質問に対する答えはありますが、残念ながら私が探していた答えではありません。その人がずっと私と一緒に働いて、多くの努力を費やしたので、私はそれを受け入れなければなりませんでした。ここで私は同じqnに、私が求めている答えを具体的に取得するように求めています。
私が求めているのは、ノックアウトビューモデルのモデルフィールドの検証を宣言的に表現する方法です。
このMVCビューモデルを持つ:
public class Email
{
public string Selected { get; set; }
public string Name { get; set; }
}
public class User
{
public string UserName { get; set; }
public IList<Email> Emails { get; set; }
}
そしてこのノックアウトを持っているviewModel
:
var viewModel = {
UserName: ko.observable("@Model.UserName"),
Emails: ko.observableArray(@Html.Json(@Model.Emails) || []),
// How to express these: ???
// Email.Selected: ko.observable().extend({ required: true })
// Email.Name: ko.observable().extend({ required: true, email: true })
}
viewModel
それを宣言的に表現するには、Knockoutでどのような変更を加える必要がありますか。viewModel
基本的には、MVCと同様の方法でノックアウトを表現することになりますが、そのモデルのフィールドで( MVCデータ注釈の代わりに)ノックアウト検証を使用します。
答える前に最後まで読んでください。読むべきテキストはそれほど多くありませんが、ここで具体的なものを探しています。