gpt4 book ai didi

c# - 实体架构

转载 作者:太空宇宙 更新时间:2023-11-03 22:08:55 25 4
gpt4 key购买 nike

使用 VS2010、.NET4.0、MVC3、EF4.1 代码优先

我有这个 POCO 实体:

public class XBLContent
{
[Key]
[StringLength(36, ErrorMessage="Must have 36 characters")]
[Required(ErrorMessage="Must have a unique GUID")]
public string GUID { get; set; }

public int Price { get; set; }

public float FileSize { get; set; }

public virtual ICollection<XBLRegionalContent> RegionalInfo { get; set; }

public string RelatedGameId { get; set; }
[ForeignKey("RelatedGameId")]
public virtual XBLContent RelatedGame { get; set; }
}

public class XBLRegionalContent
{
[Key, Column(Order = 0)]
public string ContentId { get; set; }
[ForeignKey("ContentId")]
public virtual XBLContent Content { get; set; }

[Key, Column(Order = 1)]
public string RegionId { get; set; }
[ForeignKey("RegionId")]
public virtual XBLRegion Region { get; set; }

public string Name { get; set; }
}

public class XBLRegion
{
[Key]
[StringLength(5, ErrorMessage="ID must have 5 characters")]
[Required]
[RegularExpression(@"[a-z|A-Z]{2}-[A-Z|a-z]{2}")]
public string ID { get; set; }

public string Country { get; set; }

public string Language { get; set; }
}

关系:

  • 一个 XBLContent 有多个 XBLRegionalContent;
  • 一个 XBLContent 可以与另一个 XBLContent 相关(大多数不是);
  • 一个 XBLRegionalContent 有一个 XBLContent 和一个 XBLRegion;
  • 一个 XBLRegion 有多个 XBLRegionalContent;

Context objetc 非常简单:

public class XBLContentContext : DbContext
{
public DbSet<XBLContent> XBLContents { get; set; }
public DbSet<XBLRegionalContent> XBLRegionalInfos { get; set; }
public DbSet<XBLRegion> XBLRegion { get; set; }

public XBLContentContext() : base("XBLToolsDB")
{
}
}

我正在使用 XBLContent 作为我的主要业务对象,也许这不是最好的主意。我认为我设计的架构有问题,因为我无法将信息发送到 View 并进行过滤、排序等操作。

现在,我正在使用 Telerik 网格,当我尝试按导航属性字段排序时,我收到一条错误消息,提示“不存在任何属性或字段”。也许我不应该使用 XBLContent 作为我的主要业务对象,或者创建一个包含所有需要的字段的 ViewModel 并将其发送到 View 。或者创建一个拆分为两个 EF 表的单个实体(我不知道这是否可能或如何实现)。

我只是 .NET 的学徒,需要一些 Jedi Masters 的建议。

我需要可以有多种翻译的内容。

如何最好地实现这个目标?

最佳答案

这应该可以解决您的问题。 http://weblogs.asp.net/manavi/对于初学者来说是一个很好的资源,我可以看到你使用了很多注释,所以一点点流畅的 api 会让你的概念更强大。

关于c# - 实体架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7380313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com