DevExpress DateEdit组件是空日期,传入SQL参数报错解决方法
DevExpress DateEdit组件是空日期,传入SQL参数报错解决方法ConvertEx.cs增加一个通用方法,将所有日期类型转换为SQL支持的日期格式。
SQL日期范围:1753-01-01 ~ 9999-12-31
C# Code:
/// <summary>
/// 转换为SQL支持的日期格式, 日期范围:1753-1-1 ~ 9999-12-31
/// </summary>
/// <param name="o"></param>
/// <returns></returns>
public static DateTime ToSqlDateTime(object o)
{
DateTime defMinValue = DateTime.Parse("1753-01-01 00:00:00");
DateTime defMaxValue = DateTime.Parse("9999-12-31 23:59:59");
if (null == o) return defMinValue;//传入空值,返回预设值
DateTime dt;
if (DateTime.TryParse(o.ToString(), out dt))
{
if (dt < defMinValue || dt > defMaxValue)
return defMinValue;//无效日期,预设返回SQL支持的最小日期
else
return dt;
}
return defMinValue;
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
/// <summary>
/// 转换为SQL支持的日期格式, 日期范围:1753-1-1 ~ 9999-12-31
/// </summary>
/// <param name="o"></param>
/// <returns></returns>
public static DateTime ToSqlDateTime(object o)
{
DateTime defMinValue = DateTime.Parse("1753-01-01 00:00:00");
DateTime defMaxValue = DateTime.Parse("9999-12-31 23:59:59");
if (null == o) return defMinValue;//传入空值,返回预设值
DateTime dt;
if (DateTime.TryParse(o.ToString(), out dt))
{
if (dt < defMinValue || dt > defMaxValue)
return defMinValue;//无效日期,预设返回SQL支持的最小日期
else
return dt;
}
return defMinValue;
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
调用方式:
C# Code:
public DataSet GetReportDemo(string docNoFrom, string docNoTo, DateTime docDateFrom, DateTime docDateTo)
{
SqlProcedure sp = SqlBuilder.BuildSqlProcedure("usp_IN_GetReport");
sp.AddParam("@DocNoFrom", SqlDbType.VarChar, docNoFrom);
sp.AddParam("@DocNoTo", SqlDbType.VarChar, docNoTo);
sp.AddParam("@DocDateFrom", SqlDbType.DateTime,ConvertEx.ToSqlDateTime(docDateFrom));
sp.AddParam("@DocDateTo", SqlDbType.DateTime, ConvertEx.ToSqlDateTime(docDateTo));
return DataProvider.Instance.GetDataSet(_DBName, sp.SqlCommand);
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898
public DataSet GetReportDemo(string docNoFrom, string docNoTo, DateTime docDateFrom, DateTime docDateTo)
{
SqlProcedure sp = SqlBuilder.BuildSqlProcedure("usp_IN_GetReport");
sp.AddParam("@DocNoFrom", SqlDbType.VarChar, docNoFrom);
sp.AddParam("@DocNoTo", SqlDbType.VarChar, docNoTo);
sp.AddParam("@DocDateFrom", SqlDbType.DateTime,ConvertEx.ToSqlDateTime(docDateFrom));
sp.AddParam("@DocDateTo", SqlDbType.DateTime, ConvertEx.ToSqlDateTime(docDateTo));
return DataProvider.Instance.GetDataSet(_DBName, sp.SqlCommand);
}
//来源:C/S框架网(www.csframework.com) QQ:1980854898

参考文档:
Winform企业级WCF快速开发框架平台(C/S架构+WCF+DevExpress+SQL多数据库)
进销存快速开发框架(Winform三层架构+DevExpress+SQL2008R2)
C/S结构快速开发框架使用的DevExpress常用组件
DevExpress组件版本下载、安装与VS开发环境 | Winform C/S框架|C/S开发框架
CSFrameworkV6开发框架升级VS2022+.NET8+DevExpress24.1操作步骤|C/S开发框架
C/S结构快速开发框架使用的DevExpress常用组件|C/S开发框架
DevExpress 通过小三角图标变更控件类型|C/S开发框架
DevExpress设置主题切换界面皮肤样式 | SetSkinStyle方法 | Winform 蝇量框架|C/S开发框架
DevExpress XtraTabControl 组件添加一个TabPage并设置图标|C/S开发框架
Winform软件快速开发框架(使用DevExpress正版授权皮肤组件)
测试CSFramework.DB数据底层组件IDatabase.GetTop方法(Mssql/MySql)
企业级数据权限框架 - 集团组织架构数据权限开发框架(C/S+Winform+DevExpress)
DevExpress正版授权离线注册操作步骤
Winform+DevExpress三层架构软件快速开发平台-旗舰版V5.1
C# 动态组合SQL脚本LIKE语句及查询参数防SQL注入攻击
原创C/S架构开源软件 - C#.NET+Winform+Dev+SQL快速开发框架
Winform企业级WCF快速开发框架平台(C/S架构+WCF+DevExpress+SQL多数据库)
进销存快速开发框架(Winform三层架构+DevExpress+SQL2008R2)
C/S结构快速开发框架使用的DevExpress常用组件
DevExpress组件版本下载、安装与VS开发环境 | Winform C/S框架|C/S开发框架
CSFrameworkV6开发框架升级VS2022+.NET8+DevExpress24.1操作步骤|C/S开发框架
C/S结构快速开发框架使用的DevExpress常用组件|C/S开发框架
DevExpress 通过小三角图标变更控件类型|C/S开发框架
DevExpress设置主题切换界面皮肤样式 | SetSkinStyle方法 | Winform 蝇量框架|C/S开发框架
DevExpress XtraTabControl 组件添加一个TabPage并设置图标|C/S开发框架
Winform软件快速开发框架(使用DevExpress正版授权皮肤组件)
测试CSFramework.DB数据底层组件IDatabase.GetTop方法(Mssql/MySql)
企业级数据权限框架 - 集团组织架构数据权限开发框架(C/S+Winform+DevExpress)
DevExpress正版授权离线注册操作步骤
Winform+DevExpress三层架构软件快速开发平台-旗舰版V5.1
C# 动态组合SQL脚本LIKE语句及查询参数防SQL注入攻击
原创C/S架构开源软件 - C#.NET+Winform+Dev+SQL快速开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
