我有一个名为Invitation
一个简单的MVC模式,它看起来像这样:连接MVC到knockout.js
public class Invitation
{
public string InvitedUserDisplayName { get; set; }
public string InvitedUserEmailAddress { get; set; }
}
我想在View
创建一个用户界面,使用knockout.js。用户可以输入2个字段的值,还可以按下发送邀请的按钮(在我的Controller中调用邀请方法,传递用户指定的Invitation
对象
我找不到任何可靠的文档。初学者解释这个基本的过程是什么我到目前为止是怎样的一个烂摊子:
@Model = ViewModel.Invitation
<script src="~/lib/knockout/dist/knockout.js"></script>
@model Invitation
<form asp-controller="Home" asp-action="SendInvite" method="post">
Email: <input asp-for="InvitedUserEmailAddress" data-bind="value: invitedUserDisplayName"/> <br />
Display Name: <input asp-for="InvitedUserDisplayName" data-bind="value: invitedUserEmailAddress"/> <br />
<button data-bind="click: sendInvitation">Send Invite</button>
</form>
<script type="text/javascript">
var viewModel = {
invitedUserDisplayName: @Model.InvitedUserDisplayName,
invitedUserEmailAddress @Model.InvitedUserEmailAddress
this.sendInvitation = function() {
//call controller action, passing the newly created Invitation.
}
};
ko.applyBindings(viewModel);
</script>
打开你的模型为JSON,写在某个地方然后在客户端使用javascript读取它。 Json是你去c#-Javadscript信息交换格式 – Liam
@Liam你知道是否有一些关于如何做到这一点的超级基本文档?从开始到结束。我对前端开发非常陌生。 –
我已经添加了一些您需要考虑的简要代码示例。这不是广泛的,因为主题是相当广泛的,但它将有希望指向你在正确的方向 – Liam