Jelajahi Sumber

fix: 修复长文本型字段ColumnLength为0时生成代码的bug

喵你个旺呀 1 tahun lalu
induk
melakukan
07ae34b575

+ 1 - 1
Admin.NET/Admin.NET.Web.Entry/wwwroot/template/Service.cs.vm

@@ -340,7 +340,7 @@ public class @(Model.ClassName)Service : IDynamicApiController, ITransient
                         } else if(column.NetType.EndsWith('?') == true){
                         @:.SplitError(it => it.Item.@(column.PropertyName) == null, "@(column.ColumnComment)不能为空")
                         }}
-                        if (column.NetType?.TrimEnd('?') == "string"){
+                        if (column.NetType?.TrimEnd('?') == "string" && column.ColumnLength > 0){
                         @:.SplitError(it => it.Item.@(column.PropertyName)?.Length > @(column.ColumnLength), "@(column.ColumnComment)长度不能超过@(column.ColumnLength)个字符")
                         }}
                         foreach (var config in Model.TableUniqueConfigList) {

+ 3 - 2
Admin.NET/Admin.NET.Web.Entry/wwwroot/template/editDialog.vue.vm

@@ -150,8 +150,9 @@ defineExpose({ openDialog });
 						} else if (column.EffectType == "DatePicker") {
 							@:<el-date-picker v-model="state.ruleForm.@(column.LowerPropertyName)" type="date" placeholder="@(column.ColumnComment)" />
 						} else {
-							var inputType = column.EffectType == "InputTextArea" ? "type=\"textarea\"" : "";
-							@:<el-input v-model="state.ruleForm.@(column.LowerPropertyName)" placeholder="请输入@(column.ColumnComment)" maxlength="@(column.ColumnLength)" @(inputType) show-word-limit clearable />
+							var inputType = column.EffectType == "InputTextArea" ? "type=\"textarea\" " : "";
+					        var maxlength = column.ColumnLength > 0 ? $"maxlength=\"{column.ColumnLength}\" " : "";
+							@:<el-input v-model="state.ruleForm.@(column.LowerPropertyName)" placeholder="请输入@(column.ColumnComment)" @(maxlength)@(inputType)show-word-limit clearable />
 						}
 						@:</el-form-item>
 					@:</el-col>