【发布时间】:2016-03-18 14:56:25
【问题描述】:
我必须以我对视图模型非常陌生。话虽如此,我想创建一个包含付款和订阅信息的视图,例如付款注册页面。我想更新我的 EF 模型中的多个实体,并且我计划通过视图模型来进行。问题是当我尝试根据我的控制器操作创建视图时..我收到此错误:
我的视图模型被用作一个独立的类来获取/发布数据到我的视图中......也许我做错了...... 它必须有一个主键吗?它是否需要在我的数据库中并作为 EF 实体添加?我该如何解决这个问题?谢谢
这是视图模型代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MVCProject.DataAccess;
using System.ComponentModel.DataAnnotations;
namespace MVCProject.Models.ViewModel
{
public class PaymentSetupViewModel
{
//Subscription.cs
[Required(ErrorMessage = "required")]
public string Frequency { get; set; }
public DateTime Date { get; set; }
//PaymentMethod.cs
[Required(ErrorMessage = "required")]
[CreditCard]
[Display(Name = "Card Number")]
public string CCNumber { get; set; }
[Required(ErrorMessage = "required")]
[Display(Name = "Card Expiration")]
public DateTime CCExpiration { get; set; }
[Required(ErrorMessage = "required")]
[Display(Name = "CVV2")]
public string CCCVV2 { get; set; }
[Required(ErrorMessage = "required")]
[Display(Name = "Bank Name")]
public string BankName { get; set; }
[Required(ErrorMessage = "required")]
[Display(Name = "Account Number")]
public string BankAccountNumber { get; set; }
[Required(ErrorMessage = "required")]
[Display(Name = "Routing Number")]
public string BankRoutingNumber { get; set; }
[Required(ErrorMessage = "required")]
public string ProductName { get; set; }
//AspNetUser.cs properties -- identity list of logins
public string UserName { get; set; }
//PaymentSubscriptionViewModels.cs properties
public int SelectedValue { get; set; }
}
}
【问题讨论】:
-
看起来您试图将此与 EF 相关联。确保它是一个单独的文件夹(比如)ViewModels(不在你的模型文件夹中)。
-
@StephenMuecke,它在一个单独的项目中
标签: c# asp.net-mvc entity-framework viewmodel