Internationalization 将实体映射到多个表(EF4、WCF服务)-国际化
如果我正确理解了其他几个帖子,那么如果一个实体不共享同一个主键,那么目前不可能将它们映射到多个表 这仍然是真的吗?我想知道的是,下面的db设计和EF应该如何处理国际化 我有一个国际化的数据库,其中文本存储在单独的表中。 e、 g 因此,该产品由两个表组成。在表产品中存储与语言无关的部分,在表产品中存储与语言相关的部分。 这两个表在物理上是用1:n关联链接的,但在逻辑上它是1:1关联,因为我在某个操作中总是需要一种语言 因此,我想将这两个表合并到一个由列组成的实体产品中Internationalization 将实体映射到多个表(EF4、WCF服务)-国际化,internationalization,entity-framework-4,Internationalization,Entity Framework 4,如果我正确理解了其他几个帖子,那么如果一个实体不共享同一个主键,那么目前不可能将它们映射到多个表 这仍然是真的吗?我想知道的是,下面的db设计和EF应该如何处理国际化 我有一个国际化的数据库,其中文本存储在单独的表中。 e、 g 因此,该产品由两个表组成。在表产品中存储与语言无关的部分,在表产品中存储与语言相关的部分。 这两个表在物理上是用1:n关联链接的,但在逻辑上它是1:1关联,因为我在某个操作中总是需要一种语言 因此,我想将这两个表合并到一个由列组成的实体产品中 产品ID Product
- 产品ID
- ProductGroupID
- 类语言
- 产品名称
- 描述
Uwe我不知道您是否仍然存在问题,但您可以使用产品视图解决问题,更准确地说,每种语言一个视图。我不知道您是否仍然存在问题,但您可以使用产品视图解决问题,更准确地说,每种语言一个视图。您可以使用参数化视图,哪种可能更好,并允许轻松添加新的区域性。您可以使用参数化视图,这可能更好,并允许轻松添加新的区域性。
CREATE TABLE Product(
ProductID int IDENTITY(1,1) NOT NULL,
ProductGroupID int NOT NULL,
...
CONSTRAINT PK_Product PRIMARY KEY CLUSTERED
(
ProductID ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY
) ON PRIMARY
CREATE TABLE Product_i18n(
ProductID int NOT NULL,
LanguageID int NOT NULL,
ProductName nvarchar(150) NULL,
Description nvarchar(max) NULL,
...
CONSTRAINT PK_Product_i18n PRIMARY KEY CLUSTERED
(
ProductID ASC,
LanguageID ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY
) ON PRIMARY