根據this線程,F#Core必須通過SQLCLR批准才能標記爲SAFE
的程序集。這是計劃嗎?它可以完成嗎?F#核心庫可以通過SQLCLR認證嗎?
回答
我相信可以做到。但是,F#核心庫是Microsoft的唯一財產。這意味着您不能修改其代碼並重新編譯它以匹配並符合SQLCLR SAFE。我建議你使用微軟的連接網站向微軟添加建議。
Microsoft連接在:http://connect.microsoft.com(您必須在註冊之前在live.com或hotmail.com上註冊並擁有電子郵件帳戶)。
手動添加您的.NET的DLL,並將其集成到SQL Server,你可以這樣做:
在這個例子中,從F#代碼的DLL首先必須編譯。我從MSDN Library鏈接中取得這一步驟: http://msdn.microsoft.com/en-us/library/ms254956(v=vs.80).aspx
只要不要忘記將PERMISSION_SET = SAFE添加到CREATE ASSEMBLY命令。
下面是我從上面的鏈接引用步驟:
加載和運行的「Hello World」在SQL Server
存儲過程一旦樣品過程成功 編譯,你可以在SQL 服務器中測試它。爲此,請打開SQL Server Management Studio並創建一個新的 查詢,並連接到合適的測試 數據庫(例如, AdventureWorks示例數據庫)。我們 將需要創建程序集,所以我們 可以訪問存儲過程。對於 這個例子,我們將假設你 已經在C:\目錄下創建了helloworld.dll 程序集。將以下Transact-SQL語句添加到 到 您的查詢。
CREATE ASSEMBLY helloworld from 'c:\helloworld.dll' WITH PERMISSION_SET = SAFE
一旦組件已經創建, 我們現在可以使用CREATE PROCEDURE語句 訪問我們的HelloWorld 方法。我們叫它存儲 過程「你好」:
CREATE PROCEDURE hello AS EXTERNAL NAME helloworld.HelloWorldProc.HelloWorld
一旦程序被創建, 它可以像寫在 的Transact-SQL正常 存儲過程運行。執行以下命令 :
EXEC hello
這將導致在SQL Server管理 工作室消息窗口下面 輸出。
Hello world!
編輯:基於下面的評論者,他說得對F#現在是開源的!您可以修改並重新編譯它以滿足您的需求。
編輯:添加更多關於如何將DLL集成到SQL Server CLR集成的詳細指南。
一個詭計就像使用fsc(也就是F#編譯器)的--standalone標誌一樣。這甚至可以添加到項目設置中,並嵌入輸出工件中的F#運行時庫(以及所有其他可視化嵌入的依賴項)。我相信在那個時候,只要將您的組件標記爲SQLCLR安全,您就應該能夠完全按照您的要求進行操作。
這仍然不允許組件被標記爲'SAFE'。它所做的只是將不安全的代碼移到您的自定義程序集中。 – Daniel 2011-12-12 17:35:03
- 1. asp.net核心認證
- 2. 通過與ASP核心MVC,Web API和IdentityServer4認證?
- 3. 通過JS認證可以僞造嗎? (使用第三方認證)
- 4. Linux核心數據可以使用嗎?
- 5. 通過TypeScript/Javascript實現F#庫嗎?
- 6. 您可以使用.net核心運行F#腳本文件(.fsx)嗎?
- 7. Solr4.6可以使用多核心的通用配置文件嗎?
- 8. Tridion核心服務可以通知數據更改嗎?
- 9. 用F#配置EF核心#
- 10. 是否可以通過dotnet核心(即Kestrel)提供.aspx文件?
- 11. 我可以在f#中通過名稱調用函數嗎?
- 12. 您可以通過PHP驗證通過iCloud的iOS UUID嗎
- 13. ASP.NET 2.0的核心中間件認證
- 14. 帶端口號的ASP.NET核心認證
- 15. ASP.NET核心和內部AD認證
- 16. Asp.Net核心2.0 Webapi簡單認證
- 17. ASP.NET核心:通過CallContextServiceLocator.Locator.ServiceProvider
- 18. 通過核心獲取HornetQServerControl
- 19. 核心轉儲通過ODBC
- 20. 推送通知可以跳過通知中心嗎?
- 21. 通過認證
- 22. 令牌認證在Asp.net核心使用策略庫/ 5
- 23. Android應用程序認證通過Grails的春季安全核心
- 24. 我可以在asp.net核心
- 25. 可以使用核心數據在iOS /核心圖形中撤銷/重做嗎?
- 26. 認證 - 您可以使用cookies/session嗎?
- 27. API - 認證路線可以保密嗎?
- 28. MOSS2007可以認證到其他AD嗎?
- 29. F#網頁認證
- 30. 如何通過.NET核心路由System.Diagnostics.TraceSource日誌通過NLog核心
與所有編譯器一樣,F#核心庫隨開源許可證Apache 2.0一起發佈。你當然可以修改和重新編譯它,你甚至可以分發它,甚至用於商業目的。 – Laurent 2011-04-15 09:20:21
你是對的!謝謝! – 2011-04-18 01:33:19
完成 - https://connect.microsoft.com/VisualStudio/feedback/details/670494/sqclr-approve-f-core-libraries – Daniel 2011-05-25 15:53:05