protected virtual string GetParameterTypeName(ActionFieldInfo actionFieldInfo) { if (actionFieldInfo.AllowNullable == true && !actionFieldInfo.TypeName.Equals("string", StringComparison.OrdinalIgnoreCase)) { return("?"); } return(null); }
/// <summary> /// 从配置文件获取或重写输入参数 /// </summary> /// <param name="sqlApi"></param> /// <param name="actionBuilderInfo"></param> protected virtual void SetActionInputFieldInfosFromConfig(IConfigurationSection sqlApi, ActionBuilderInfo actionBuilderInfo) { if (sqlApi.GetSection("Input:Parameter").Exists()) { foreach (var par in sqlApi.GetSection("Input:Parameter").GetChildren()) { var name = par["Name"]; if (string.IsNullOrWhiteSpace(name)) { continue; } var type = par["Type"]; var defaultValue = par["DefaultValue"]; var allowNullable = par["AllowNullable"]; var actionFieldInfo = actionBuilderInfo.ActionInputInfo.ActionFieldInfos.FirstOrDefault(p => p.Name == name); if (actionFieldInfo == null) { actionFieldInfo = new ActionFieldInfo() { Name = name }; actionBuilderInfo.ActionInputInfo.ActionFieldInfos.Add(actionFieldInfo); } if (!string.IsNullOrWhiteSpace(type)) { actionFieldInfo.TypeName = type; } if (!string.IsNullOrWhiteSpace(allowNullable)) { actionFieldInfo.AllowNullable = Convert.ToBoolean(allowNullable); } if (!string.IsNullOrWhiteSpace(defaultValue)) { actionFieldInfo.DefaultValue = defaultValue; } } } }