【问题标题】:"Object reference not set to an instance of an object" when publishing a sql project VS 2013发布sql项目VS 2013时“对象引用未设置为对象的实例”
【发布时间】:2014-02-06 16:30:43
【问题描述】:

当我尝试从 Visual Studio 2013 将 SQL 项目发布到数据库 (SQL server 2008 r2) 时,我收到一个对话框,提示

"Object reference not set to an instance of an object" 

然后发布永远不会完成(进度图标一直在旋转)。

当我点击“输出”标签时,我没有看到任何错误。它说:

========== Build: 4 succeeded or up-to-date, 0 failed, 0 skipped ==========.

当我从 VS 2013 在我的项目和生产数据库之间进行“架构比较”时,我得到了同样的错误。

有什么方法可以追踪 VS2013 的数据工具操作如何以及为什么会产生该错误?

【问题讨论】:

  • 将调试器附加到 vS 并设置 Break on All Exceptions。
  • 我尝试过:1. 在调试选项中取消选中“我的代码”,然后 2. 将调试器附加到 devenv 进程,然后 3. 尝试发布,但它没有因异常而中断。它只是像以前一样显示带有错误的弹出对话框。
  • 调试,异常,检查所有 CLR 异常的中断。
  • 我无法让 VS 中断异常。我检查了所有异常类型。
  • 我的.refactorlog 文件是造成这种情况的原因。我不需要它,所以我把它删除了。

标签: sql-server-2008-r2 visual-studio-2013 sql-data-tools


【解决方案1】:

我又遇到了这个问题。我的问题是我在服务器(发布的目标服务器)中的一个表值函数的定义有一个 SQLCmd 参数被注释掉:

CREATE FUNCTION MyProblematicFunc
(   
    @beg_date date,
    @end_date date
)
RETURNS TABLE 
AS
RETURN 
(
    SELECT  
        Name,
        Address,
        --,cast([$(DBreferenceFromVS)].[dbo].[ConvertNumToDate](NumericDate) as DATE) [Create Date] 
        -- ^^^^ This comment above was causing the error on publish and on schema comparison. I had to remove it in the server
    FROM  RandomTable

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多