要在数据库中实现一个复杂逻辑.但这个复杂的逻辑已经用C#程序已经实现(如果再用T-SQL来实现一次的话,有相当的难度和工作量)现在想把C#所实现的程序封装成为方法.
利用SQL的CLR,在数据库中使用,但这个封装好的方法中使用了一些数库操作.还有读Web.config节的地方.
现在把DLL 放入SQL CLR中 ,运行时报错.错误信息意思是读不到web.cofing这里面的内容.这样问题应该怎么解决.???
请了解的朋友给些意见/这是将DLL注册到CLR中USE EngineDB
GOEXEC sp_changedbowner 'sa'
Alter Database EngineDB
SET TRUSTWORTHY ON
go
create assembly MHLSQLFunctionFROM 'E:\Engine\iSec\SqlServerProject1\bin\Debug\SqlServerProject1.dll'WITH permission_set = UNSAFE;错误信息:
消息 6522,级别 16,状态 2,第 1 行
在执行用户定义例程或聚合 ' ' 期间出现 .NET Framework 错误:
System.NullReferenceException: Object reference not set to an instance of an object.
System.NullReferenceException:
at BC.Engine.DBHelper.SysConfig.GetConfigString(String name)
at BC.Engine.DBHelper.SysConfig.get_DataBaseType()
at BC.Engine.DBHelper.Factory.CreateDBAccess()
at BC.Engine.iSec.UserRight..ctor()
at BC.Engine.iSec.SecurityEngine..ctor()
at SqlServerProject1.Class1.GetUserRightList(SqlString userid)-----------------------
at BC.Engine.DBHelper.SysConfig.GetConfigString(String name)
这句就是说明没有读到Web.config节
MSN:[email protected]大家有了解的互相交流一下呀
利用SQL的CLR,在数据库中使用,但这个封装好的方法中使用了一些数库操作.还有读Web.config节的地方.
现在把DLL 放入SQL CLR中 ,运行时报错.错误信息意思是读不到web.cofing这里面的内容.这样问题应该怎么解决.???
请了解的朋友给些意见/这是将DLL注册到CLR中USE EngineDB
GOEXEC sp_changedbowner 'sa'
Alter Database EngineDB
SET TRUSTWORTHY ON
go
create assembly MHLSQLFunctionFROM 'E:\Engine\iSec\SqlServerProject1\bin\Debug\SqlServerProject1.dll'WITH permission_set = UNSAFE;错误信息:
消息 6522,级别 16,状态 2,第 1 行
在执行用户定义例程或聚合 ' ' 期间出现 .NET Framework 错误:
System.NullReferenceException: Object reference not set to an instance of an object.
System.NullReferenceException:
at BC.Engine.DBHelper.SysConfig.GetConfigString(String name)
at BC.Engine.DBHelper.SysConfig.get_DataBaseType()
at BC.Engine.DBHelper.Factory.CreateDBAccess()
at BC.Engine.iSec.UserRight..ctor()
at BC.Engine.iSec.SecurityEngine..ctor()
at SqlServerProject1.Class1.GetUserRightList(SqlString userid)-----------------------
at BC.Engine.DBHelper.SysConfig.GetConfigString(String name)
这句就是说明没有读到Web.config节
MSN:[email protected]大家有了解的互相交流一下呀
这个DLL文件不只是一个地方要用到.所以放到初始化接口中不可以的呀..
然后存储过程传值给你的clr函数
gyf19(秋天的云)
也就是说一定不可以了,是吗?
:(
等等看谁做过这方面的事情
http://www.cnblogs.com/DavidFan/archive/2007/05/16/748300.html
不是道为什么,cnblogs老是很慢。
是我的业务逻辑里有一个地方Connection没有关闭。
导至报错
这错误不太好找。有时报有时不报。
后来查SQL活动监视器才找到。
谢谢大家。结贴了。