如何在 SQL CLR 中添加 Linq 支持

Posted

技术标签:

【中文标题】如何在 SQL CLR 中添加 Linq 支持【英文标题】:How to add Linq support in SQL CLR 【发布时间】:2010-03-31 17:24:11 【问题描述】:

据我了解,SQL Server 2008 支持(或将支持)System.Core.dll 和 System.Xml.Linq.dll。

我正在尝试在我的 SQL 2008 CLR 项目中使用 Linq to Objects。

我将如何“添加”/注册这些 dll? (我不能将它们添加为参考)

提前致谢, 奥利给

【问题讨论】:

【参考方案1】:

SQLCLR 项目似乎不提供“添加引用”菜单项,但 http://code.msdn.microsoft.com/PowerCommands 的 Visual Studio 电源命令提供了一种简单的解决方法。

1) 安装电源命令。

2) 创建另一个非 SQLCLR 项目,并将这些引用添加到它。如果您在解决方案中已经有一个包含这些引用的项目,请跳过它并直接使用它。

3) 右键单击​​#2 中的每个所需参考,然后选择复制参考。转到 SQLCLR 项目的引用节点并选择粘贴引用

请注意,您不能只引用任何旧的 DLL;有一个非常狭窄的预先批准的允许 dll 列表。参见例如http://www.sqlskills.com/blogs/bobb/post/New-SQLCLR-approved-assembly-in-SP1.aspx 了解更多信息。

希望这会有所帮助!

【讨论】:

【参考方案2】:
CREATE ASSEMBLY [referencename]

FROM 'filepath'

WITH PERMISSION_SET = UNSAFE

然后右键单击您的项目,单击添加引用,它应该会显示在 SQL Server 下。

【讨论】:

以上是关于如何在 SQL CLR 中添加 Linq 支持的主要内容,如果未能解决你的问题,请参考以下文章

我如何防止 Linq 添加 GUID 以便 SQL 服务器可以做到这一点?

如何向 Linq2SQL DBML 文件添加额外的程序集引用?

如何在 c# 中添加特定条件项后对特定元素进行分组 linq to sql

如何在 CLR 函数中获取 SQL 字符串的排序规则?

如何在 SQL Server 的 clr 存储过程中执行动态 .net 代码

如何使用 linq 实体仅从 sql 表中选择最后一个条目