[英]Degree of C# support in SQL CLR user-defined function?
這可能很幼稚,但我對此沒有任何確認:當我通過SQLCLR並作為C#SQL Server項目編寫SQL函數時,SQL函數可以在.NET BCL中包含任何方法/類/命名空間嗎? 功能可以做什么? 我對SQL Server及其托管操作系統具有完全控制權,因此可以在該級別上修改安全設置。 我對SQLCLR用戶定義函數(SQL項目)中對C#的語言支持更感興趣。
我的最終代碼部署將在SQL Server 2005和2008 R2(企業版)上進行。 由於就功能和支持而言,2008 R2將是2005的發展,所以2005是我的共同點,因此我對2005的答案很感興趣。
謝謝
.NET版本取決於SQL Server版本:
它不是對.NET的完全訪問權限-限制基於external_access參數。 有關更多詳細信息,請參見此鏈接: http : //msdn.microsoft.com/zh-cn/library/ms345101.aspx
這不可以。 您不能使用具有[HostProtection]屬性的類來將其標記為不安全的類。 有關詳細信息,請參見MSDN Library文章 ,其中包括禁止訪問的類的列表。
此類的經典示例是TimeZoneInfo,它加載了一個非托管DLL,如果查詢中止,該DLL不會被卸載。
[HostProtection(SecurityAction.LinkDemand, MayLeakOnAbort=true)]
public sealed class TimeZoneInfo : IEquatable<TimeZoneInfo>, ISerializable, IDeserializationCallback
{
// etc...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.