RepoDb 似乎不适用于名称中带点的 SQL 服务器表
RepoDb does not seem to work for SQL Server tables with dot in the name
我开始使用 RepoDb,但我的 SQL Server 2016 数据库有 tables,中间有一个点,如下所示:User.Data
.
从完整的 .NET Entity Framework 迁移到 RepoDb,我遇到了这个问题。我正在使用流畅的映射,我写了这样的东西:
FluentMapper
.Entity<UserData>()
.Table("[User.Data]")
.Primary(u => u.UserId)
我得到异常:MissingFieldsException
它说:
There are no database fields found for table '[User.Data]'. Make sure that the target table '[User.Data]' is present in the database and/or at least a single field is available.
出于好奇,我创建了一个具有相同属性和主键的 table UserData
,并且效果很好(更改流畅的映射器:.Table("[UserData]")
.
我是不是漏掉了什么?
谢谢你帮助我
仅RepoDb.SqlServer (v1.0.13)版本以上支持。您可以使用以下任一方法。如果您使用的是数据库和架构,请务必指定引号。
通过内置 MapAttribute
.
[Map("[User.Data]")]
通过 System.ComponentModel.DataAnnotations
命名空间的 TableAttribute
。
[Table("[User.Data]")]
像你一样通过FluentMapper
。
FluentMapper
.Entity<UserData>()
.Table("[User.Data]");
我开始使用 RepoDb,但我的 SQL Server 2016 数据库有 tables,中间有一个点,如下所示:User.Data
.
从完整的 .NET Entity Framework 迁移到 RepoDb,我遇到了这个问题。我正在使用流畅的映射,我写了这样的东西:
FluentMapper
.Entity<UserData>()
.Table("[User.Data]")
.Primary(u => u.UserId)
我得到异常:MissingFieldsException
它说:
There are no database fields found for table '[User.Data]'. Make sure that the target table '[User.Data]' is present in the database and/or at least a single field is available.
出于好奇,我创建了一个具有相同属性和主键的 table UserData
,并且效果很好(更改流畅的映射器:.Table("[UserData]")
.
我是不是漏掉了什么?
谢谢你帮助我
仅RepoDb.SqlServer (v1.0.13)版本以上支持。您可以使用以下任一方法。如果您使用的是数据库和架构,请务必指定引号。
通过内置 MapAttribute
.
[Map("[User.Data]")]
通过 System.ComponentModel.DataAnnotations
命名空间的 TableAttribute
。
[Table("[User.Data]")]
像你一样通过FluentMapper
。
FluentMapper
.Entity<UserData>()
.Table("[User.Data]");