我创建了一个用于 SQL Server 2008 的 CLR UDT,现在正尝试从数据库项目中实际使用它。
- CLR UDT 项目和数据库项目在 Visual Studio 中的同一解决方案中
- 两者都在解决方案部署设置中设置为部署
- 它们都在各自的项目设置中配置为部署到同一个数据库
- 我添加了一个引用并确认了从数据库项目到 CLR UDT 项目的结果依赖项
尽管如此,当我尝试“部署解决方案”时,它会构建(注意:不会在任何地方部署)SQL CLR 项目,然后开始通过数据库项目的“验证项目模型”并Error SQL03006: Column [schema].[table].[column] has an unresolved reference to Sql Type [typeschema].[typename].
在我所在的数据库列上抛出使用 CLR 类型。
我尝试进入 Tools -> Options -> Database Tools -> Schema Compare -> Microsoft SQL Server 2008 并在 Object Types 下将其设置为 ignore User-Defined Types (CLR)
,但这没有任何明显的效果。
如果我将 CLR UDT 项目部署到数据库,则通过 SQL Server Management Studio 进入该数据库和DECLARE
该类型的变量,这可以正常工作(如预期的那样)。因此,这很明显与 Visual Studio 的模型有效性概念有关,而不是仅尝试(并以正确的顺序执行操作)可能是部署结果的实际问题。
谷歌显然没有帮助。我错过了什么?