Skip to content

Commit dbe0b01

Browse files
committed
TDengine TIMESTAMP特殊处理
1 parent 5a055d2 commit dbe0b01

File tree

1 file changed

+29
-2
lines changed

1 file changed

+29
-2
lines changed

Providers/FreeSql.Provider.TDengine/TDengineProvider.cs

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,31 @@ public TDengineProvider(string masterConnectionString, string[] slaveConnectionS
4343
// e.ModifyResult.IsIgnore = true;
4444
//};
4545

46+
//TDengine 特殊处理:
47+
this.Aop.AuditDataReader += (_, e) =>
48+
{
49+
var dataTypeName = e.DataReader.GetDataTypeName(e.Index);
50+
switch (dataTypeName)
51+
{
52+
case "TIMESTAMP":
53+
try
54+
{
55+
var value = e.DataReader.GetValue(e.Index);
56+
if (value != null)
57+
e.Value = e.DataReader.GetDateTime(e.Index);
58+
else
59+
e.Value = null;
60+
61+
return;
62+
}
63+
catch
64+
{
65+
e.Value = new DateTime();
66+
return;
67+
}
68+
}
69+
};
70+
4671
//处理参数化
4772
this.Aop.CommandBefore += (_, e) =>
4873
{
@@ -75,7 +100,8 @@ public override IInsert<T1> CreateInsertProvider<T1>() =>
75100

76101
public override IUpdate<T1> CreateUpdateProvider<T1>(object dywhere)
77102
{
78-
throw new NotImplementedException($"FreeSql.Provider.TDengine {CoreErrorStrings.S_Not_Implemented_Feature}");
103+
throw new NotImplementedException(
104+
$"FreeSql.Provider.TDengine {CoreErrorStrings.S_Not_Implemented_Feature}");
79105
}
80106

81107
public override IDelete<T1> CreateDeleteProvider<T1>(object dywhere)
@@ -85,7 +111,8 @@ public override IDelete<T1> CreateDeleteProvider<T1>(object dywhere)
85111

86112
public override IInsertOrUpdate<T1> CreateInsertOrUpdateProvider<T1>()
87113
{
88-
throw new NotImplementedException($"FreeSql.Provider.TDengine {CoreErrorStrings.S_Not_Implemented_Feature}");
114+
throw new NotImplementedException(
115+
$"FreeSql.Provider.TDengine {CoreErrorStrings.S_Not_Implemented_Feature}");
89116
}
90117

91118
~TDengineProvider() => this.Dispose();

0 commit comments

Comments
 (0)