![](/img/trans.png)
[英]Npgsql.PostgresException: relation "tablename" does not exist'
[英]Npgsql.PostgresException 42703: column "Created" of relation "posts" does not exist
目前我正在使用 .NET Core 和 PostgreSQL 开发一个小项目。 对于我的数据访问,我想使用Dapper.Contrib
。 现在,我面临以下问题:
以下代码段显示了CREATE_DATABASE.sql
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
CREATE TABLE posts (
id UUID DEFAULT uuid_generate_v4 (),
created BIGINT,
value VARCHAR NOT NULL,
PRIMARY KEY (Id)
);
以下是我在 .NET Core 中的模型类
[Table("posts")]
public class Post
{
[Column("id")]
public Guid Id { get; set; }
[Column("created")]
public long Created { get; set; }
[Column("value")]
public string Value { get; set; }
}
insert 方法看起来像这样(它在基类中。在这种情况下 T 是 Post 类型):
public void Insert(T entity)
{
_connection.Insert(entity);
}
尝试插入Post
对象时,我遇到了以下错误:
Ein Ausnahmefehler des Typs "Npgsql.PostgresException" ist in System.Private.CoreLib.dll aufgetreten.: '42703: column "Created" of relation "posts" does not exist
当将NpgsqlLogManager.Provider
设置为new ConsoleLoggingProvider(NpgsqlLogLevel.Trace, true, true);
记录了以下INSERT
语句:
DEBUG [14313] Executing statement(s):
insert into posts ("Created", "Value") values ($1, $2) RETURNING Id
那么,问题出在哪里呢? 我认为Dapper.Contrib
在属性方面做得很好,但显然不是。
除了将模型属性重命名为小写外,有人知道如何解决此问题吗?
到目前为止,谢谢你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.