我正在尝试更新Order
实体:
public class Order
{
public int Id { get; set; }
public PaymentMethod PaymentMethod { get; set; }
}
PaymetMethod.cs:
public enum PaymentMethod
{
[Description("PayPal")]
PayPal,
[Description("Credit Card")]
CreditCard,
[Description("Transfer")]
Transfer
}
当我尝试使用以下代码更新PaymentMethod
的枚举Order
属性时,会发生问题:
public decimal Update(int id)
{
IQueryable<Order> order = GetAll().Where(e => e.Id == id);
order.Single().PaymentMethod = (PaymentMethod) 1; //Error
return SaveChanges();
}
错误提示:
“无法将“订单”上的“ PaymentMethod”属性设置为 'System.String'值。您必须将此属性设置为非空值 类型为“ Bla.Bla.Bla.PaymentMethod”。 '
我有两个问题: