dotnetcore / dotnetcore/FreeSql

.Net8使用postgresql的数组类型字段映射错误

Open
#2,039 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
4.4k
Forks
910
PR merge metrics
No merged PRs in 30d

Description

#### 问题描述及重现代码:

```c#
[Column(Name = "symptom_codes")]
public string[] SymptomCodes { get; set; }
```

#### 数据库版本
postgresql 16

#### 安装的Nuget包
FreeSql.All(3.2.832)

#### .net framework/. net core? 及具体版本
.Net8

单纯以上写法时报错:Invalid cast from 'System.String' to 'System.String[]'.

加上
switch (fsql.Ado.DataType)
{
case DataType.PostgreSQL:
case DataType.CustomPostgreSQL:
case DataType.OdbcPostgreSQL:
if (e.Property.PropertyType == typeof(string[]))
{
e.ModifyResult.DbType = "character varying[]";
}
break;
}后,报错:22001: 对于字符类型来说这个值太长了(1)

应该如何使用postgresql的数组类型

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.