我爱Aspx >> C#.Net >> 存储过程中调用C#写的DLL_C#应用
最近一个项目中遇到一个转换FileTime的问题.时间是在C#中用DateTime.ToFileTime写入数据库中,这在存储过程中判断年和季度成了问题,怎么样才能把时间转换为正常的时间格式呢?Sql server中又没有FromFileTime对应的方法?其实很简单用C#写一个转换时间的Dll然后在存储过程中调用就可以了.
转换时间的类如下:
[Guid("729ba6af-3eff-4b75-b43b-d951a190dbe6")]
public class FileTimeConvert
{
public FileTimeConvert()
{
}
public string ConvertTime(long fileTime)
{
string retVal = string.Empty;
if (fileTime > 0)
{
DateTime dt = DateTime.FromFileTime(fileTime);
retVal = dt.ToString();
}
return retVal;
}
}
注意这个Guid我们在存储过程中引用要用到这个Guid.
为方便可能在多处需要调用,我们专门写一个存储过程
如下:
CREATE PROCEDURE spu_ConvertFileTimeToNormal
@ticks BIGINT,
@returnval varchar(40) output
AS
DECLARE @src varchar(255)
DECLARE @desc varchar(255)
DECLARE @object int
DECLARE @hr int
EXEC @hr = sp_OACreate '{729ba6af-3eff-4b75-b43b-d951a190dbe6}',@object OUT
IF @hr = 0 --如果创建对象成功
BEGIN
EXEC @hr = sp_OAMethod @object,'ConvertTime',@returnval OUT,@ticks
print @returnval
print @hr
if(@hr <> 0)
BEGIN
EXEC sp_OAGetErrorInfo @object, @src OUT, @desc OUT
SELECT hr=convert(varbinary(4),@hr), Source=@src, Description=@desc
END
END
ELSE
BEGIN
--print @hr
print 'Create Object ConvertTime failed'
Ҷƪл˵?
C#中使用存储过程中的返回值_C#应..[04-28]
mysql存储过程及c#调用标准版_数..[04-28]
防SQL注入攻击_C#应用[04-28]
js也可以有自定义事件 注入就是这..[04-28]
ADO.NET 2.0:如何排除错误信息「..[04-28]
.net 2.0(c#)下简单的FTP应用程序..[04-28]
asp.net实现C#代码加亮显示_ASP...[04-28]
js asp c# 防止sql注入_数据库安..[04-28]
ASP.NET的实时天气及24小时天气预..[04-28]
用Visual C#来清空回收站(2)_C#应..[04-28]
在Access中模拟sql server存储过..[04-28]
SQL 存储过程&算法_数据库技..[04-28]
使用Data Access Application Bl..[04-28]
asp.net调用存储过程方法新解_AS..[04-28]
建立一个传表名参数的存储过程_数..[04-28]
一个比较好的分页存储过程_数据库..[04-28]
关于ASP.NET2.0编写扩展存储过程..[04-28]
如何解决Remoting无法传输存储过..[04-28]
高级自定义查询、分页、多表联合..[04-28]
通用分页存储过程,源码共享,大..[04-28]