我有一个简单的强类型视图.
@model GoldForGold.Models.LogonModel
@{
ViewBag.Title = "Logins";
Layout = "~/Views/Shared/_Layout.cshtml";
}
Logins
@using (Html.BeginForm()) {
Account Information
@Html.LabelFor(m => m.UserName)
@Html.TextBoxFor(m => m.UserName, new { id = "txtUserName" })
@Html.ValidationMessageFor(m => m.UserName)
@Html.LabelFor(m => m.Password)
@Html.PasswordFor(m => m.Password, new { id = "txtPassword" })
@Html.ValidationMessageFor(m => m.Password)
@Html.CheckBoxFor(m => m.RememberMe)
@Html.LabelFor(m => m.RememberMe)
<input type="submit" value="Log On" onclick="getcredentials()" />
}
Run Code Online (Sandbox Code Playgroud)
型号代码在这里.
public class LogonModel
{
[Required(ErrorMessage="please enter username")]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required] …Run Code Online (Sandbox Code Playgroud) 提交表单时,我收到一条错误消息,指出无法找到我的视图模型中没有的某些属性“密码”。
System.ArgumentException:找不到属性 ProjectName.ViewModels.User.UserSecurityViewModel.Password。
这是我的 html 表单
<form id="securityForm" class="form-horizontal" method="post" action="/User/SaveSecurityInfo">
<div class="panel panel-default">
<div class="panel-heading">Change Your Password</div>
<div class="panel-body">
<div class="col-sm-7">
<div class="form-group">
<label for="OldPassword" class="col-sm-4 control-label">Old Password</label>
<div class="col-sm-8">
<input type="password" name="OldPassword" class="form-control input-lg" id="OldPassword">
</div>
</div>
<div class="form-group">
<label for="NewPassword" class="col-sm-4 control-label">New Password</label>
<div class="col-sm-8">
<input type="password" name="NewPassword" class="form-control input-lg" id="NewPassword">
</div>
</div>
<div class="form-group">
<label for="ConfirmPassword" class="col-sm-4 control-label">Confirm Password</label>
<div class="col-sm-8">
<input type="password" name="ConfirmPassword" class="form-control input-lg" id="ConfirmPassword">
</div>
</div>
</div>
<div class="col-sm-5">
some test text @Html.ValidationSummary("", …Run Code Online (Sandbox Code Playgroud)我正在从 API 获取数据并尝试将其转换为反序列化形式。但出现这个错误。
public static async Task<List<Movie>> GetAllMovies(int pageNumber, int pageSize)
{
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", Preferences.Get("accessToken", string.Empty));
var response = httpClient.GetStringAsync(AppSettings.ApiUrl + String.Format("api/movies/AllMovies?sort=asc&pageNumber={0}&pageSize={1}",pageNumber,pageSize));
return JsonConvert.DeserializeObject<List<Movie>>(response);
}
Run Code Online (Sandbox Code Playgroud) 我一直在这里寻找类似的问题,但仍然找不到我的问题的解决方案.
我有一个包含一些文本和表单的页面,它们共享相同的ViewModel,如下所示:
public class MyViewModel
{
public IEnumerable<WordingB> WordingBs { get; set; }
public IEnumerable<WordingC> WordingCs { get; set; }
public IEnumerable<Question> Questions { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这里有关于WordingB,WordingC和Question的更多细节:
public class WordingB
{
public string EOW { get; set; }
}
public class WordingC
{
public string EOW { get; set; }
}
public class Question
{
public string QuestionText { get; set; }
public string Answer {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
这是有问题的页面:
@model MyProject.ViewModels.MyViewModel
<div class="col-md-6 masonry listview-block">
@foreach (var wording …Run Code Online (Sandbox Code Playgroud) 所以我们在团队中增加了一名新程序员,他对如何在 MVC 中创建模型有一些想法,这与我们之前创建模型的方式不同。例如,我们有一个系统,用户可以在其中提交文件请求,并且该系统中有一个页面,用户可以在其中计算完成该文件请求的费用。此费用创建页面可以输入有关费用的一些数据以及相关发票。用户可以添加发票行项目并使用它们来自动计算费用总额。在这种情况下,我们通常会创建如下所示的模型。
public class Fee
{
public virtual Guid RequestID { get; set; }
public virtual Guid FeeID { get; set; }
public string FeeTitle { get; set; }
public decimal FeeAmount { get; set; }
public DateTime? DueDate { get; set; }
public decimal AmountPaid { get; set; }
public Invoice Invoice { get; set; }
public List<InvoiceLineItem> LineItems { get; set; }
}
public class Invoice
{
// Additional Invoice Data (To, From, etc)
}
public class …Run Code Online (Sandbox Code Playgroud)