如何使这个CLR与2005一起工作?我正在尝试为使用.net3.5程序集的sql2005数据库创建一个clr存储过程,所以首先我必须更改sql2005以识别system.core是不安全的我不太高兴(我宁愿拥有它说安全)。现在我收到了这个错误Msg6522,Level16,State1,ProcedureStoredProcedure1,Line0被CLR主机禁止。受保护的资源(仅在完全信任的情况下可用)是:所有所需的资源是:MayLeakOnAbortSystem.Security.HostProtectionException:atStoredProcedures.StoredProcedure1(StringUtcDateTime)这是我的代码ExecStoredProcedure1'7/8/20105:00:00am'使用系统;使用系统数据;使用System.Data.SqlClient;使用System.Data.SqlTypes;使用Microsoft.SqlServer.Server;公共部分类StoredProcedures{[Microsoft.SqlServer.Server.SqlProcedure]publicstaticvoidStoredProcedure1(stringUtcDateTime){SqlPipep=SqlContext.Pipe;DateTimeconverted=TimeZoneInfo.ConvertTimeBySystemTimeZoneId(Convert.ToDateTime(UtcDateTime),"太平洋站ardTime");p.Send(converted.ToString());}};我不知道如何将日期时间传递给它,所以我使用了一个字符串然后将其转换为了让它工作你必须设置它对于UNSAFE。显然,一些TimeZoneInfo方法设置了HostProtectionAttribute,这意味着它们不能在SQLServerCLR代码中使用。除非你决定“我不关心稳定性并且知道得更多”。如果你使用UNSAFE,如果你的服务器成为地面网上冒烟的坑我不负任何责任。。。以上是C#学习教程:HowtomakethisCLRworkwith2005?全部内容分享,如果对大家有用还需要了解关于C#学习教程,希望大家注意——本文采集自网络,不代表立场,如涉及侵权,请点击右侧联系管理员删除,如有转载,请注明出处:
