我想向模型中添加更多验证消息注释(这里的所有模型都是先由数据库生成的),所以我在此链接https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/database-first-development/enhancing-data-validation的帮助下使用了元数据。没有模型更新,但生成失败并显示警告,而不是:首先在实体框架中从数据库中更新元数据模型不起作用
错误6046:无法生成存储函数'fn_diagramobjects'的函数导入返回类型。
错误CS1061'Account'没有包含'ConfirmPassword'的定义,也没有找到接受'Account'类型的第一个参数的扩展方法'ConfirmPassword'(你是否缺少using指令或程序集引用?)项目-ASP-MVC d:.NET演示\项目\项目-ASP-MVC \ \控制器85 UserController.cs主动
这是我的模型从数据库中生成:
using System;
using System.Collections.Generic;
public partial class Account
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public Account()
{
this.Orders = new HashSet<Order>();
}
public string username { get; set; }
public string password { get; set; }
public Nullable<int> role_id { get; set; }
public virtual Role Role { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<Order> Orders { get; set; }
}
元.cs:
个using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Web;
namespace project_asp_mvc.Models
{
public class AccountMetadata
{
[Required]
[StringLength(50, ErrorMessage = "Username con not be longer than 50")]
[EmailAddress]
public string username { get; set; }
[Required]
[DataType(DataType.Password)]
public string password { get; set; }
[Required]
[NotMapped]
[DataType(DataType.Password)]
[Compare("Password", ErrorMessage = "Please confirm your password again")]
public string ConfirmPassword { get; set; }
}
}
PartialClasses.cs
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
namespace project_asp_mvc.Models
{
[MetadataType(typeof(AccountMetadata))]
public partial class Account
{
}
}
如果我删除它,那么如何确认2个密码? –
每次1个奇迹。现在它甚至没有建立。让我们开始运行,以确保没有更多的问题,然后从那里开始。 – user8617089
构建成功,但它仍然存在的警告,没有什么更新:严重性\t代码\t说明\t项目\t文件\t线\t抑制状态 警告\t \t错误6046:无法生成存储功能“fn_diagramobjects”的函数导入的返回类型。商店功能将被忽略,并且不会生成功能导入 –