From 9ca96199d92168fe221dda9aba56f55520a561d8 Mon Sep 17 00:00:00 2001
From: hutongqing <hutongqing@hnkhzn.com>
Date: 星期二, 29 十月 2024 17:30:59 +0800
Subject: [PATCH] 1

---
 WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/ObjectExtension.cs |   14 +++++++++++---
 1 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/ObjectExtension.cs b/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/ObjectExtension.cs
index 03e8283..ce27b68 100644
--- a/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/ObjectExtension.cs
+++ b/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/ObjectExtension.cs
@@ -1,4 +1,5 @@
-锘縰sing System;
+锘縰sing SqlSugar;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Reflection;
@@ -25,7 +26,7 @@
             PropertyInfo[] propertyInfos = typeof(T).GetProperties(BindingFlags.GetProperty | BindingFlags.Public | BindingFlags.Instance);
             foreach (var property in propertyInfos)
             {
-                object value = null;
+                object? value = null;
                 if (!dic.TryGetValue(property.Name, out value))
                 {
                     if (!dic.TryGetValue(property.Name.FirstLetterToUpper(), out value))
@@ -36,7 +37,14 @@
                         }
                     }
                 };
-                property.SetValue(model, value?.ToString().ChangeType(property.PropertyType));
+
+                SugarColumn? sugarColumn = property.GetCustomAttribute<SugarColumn>();
+                if (sugarColumn != null && sugarColumn.IsIdentity && (value == null || value.Equals("")))
+                {
+                    continue;
+                }
+                if (value != null && sugarColumn != null && !sugarColumn.IsNullable)
+                    property.SetValue(model, value.ChangeType(property.PropertyType));
             }
             return model;
         }

--
Gitblit v1.9.3