Typescript ASP.net内核中的Aurelia和模型
我最近一直在探索不同的javascript框架,并决定开始使用Aurelia重写ASP.Net核心MVC前端。 我用这个方法重新开始 一切正常,我已经加载了我的DAL、BLL项目,使用EF core建立了与数据库的连接,并将数据提取到Aurelia前端 然而,目前,在我的ts文件中,我使用的接口与我在BLL中设置的模型几乎相同 我的模型:Typescript ASP.net内核中的Aurelia和模型,typescript,asp.net-core,aurelia,Typescript,Asp.net Core,Aurelia,我最近一直在探索不同的javascript框架,并决定开始使用Aurelia重写ASP.Net核心MVC前端。 我用这个方法重新开始 一切正常,我已经加载了我的DAL、BLL项目,使用EF core建立了与数据库的连接,并将数据提取到Aurelia前端 然而,目前,在我的ts文件中,我使用的接口与我在BLL中设置的模型几乎相同 我的模型: public class staff { [Key] public short StaffId { g
public class staff
{
[Key]
public short StaffId { get; set; }
[DisplayName("First name *")]
public string FirstName { get; set; }
[DisplayName("Family name *")]
public string FamilyName { get; set; }
[DisplayName("Phone")]
public string PhoneNumber { get; set; }
[DisplayName("Birth Date"), DisplayFormat(DataFormatString = "{0:dd MMM yyyy}", ApplyFormatInEditMode = true)]
public DateTime? BirthDate { get; set; }
}
我的ts文件中的Aurelia接口
interface staff{
firstname: string;
familyname: string;
phone: string;
date: date;
}
我希望避免冗余,而是希望直接使用模型。
有没有办法将模型导入/注入到我的ts文件中?
我可以更好地使用注释在html中设置表的标题,或者进行一些格式化/验证吗
多谢各位
Sylvain虽然最初,从后端模型生成aurelia模型似乎是个好主意,但它消除了使用SPA的一大好处 您应该将后端和aurelia前端都视为不同的应用程序。您的视图模型永远不会与您的域完全相同,将它们分开意味着对其中任何一个的全部重写都不会影响另一个 在通过网络发送域模型之前,应该实现一种映射机制,将域模型映射到aurelia模型。(如果您不想自己实现,我建议使用automapper) 根据经验,随着功能的增加,您的aurelia模型将慢慢偏离您的领域。您将开始在视图中拥有在映射过程中动态生成的属性,通常作为其他属性的聚合。如果您试图将这些属性放入您的域中(不应该是这样的!),这可能会造成很大的痛苦。我知道复制看起来像是开销,但是让前端直接依赖后端会带来更大的开销