我今天遇到了最严重的问题。当我将 WCF 服务部署到 live 时,它会NullReferenceException
在尝试加入时抛出并记录 a 。加入的代码是这样的:
var myInfo = __myContext.Dates
.Join(_myContext.Times, d => d.SomeID, t => t.SomeID, (d, t) => new { d, t })
.Where(c => c.d.DateType == "Date of Birth")
.ToList();
由于代码是远程运行的,我无法弄清楚什么是空的。我将它部署到 Edge 环境中进行测试,并遇到了同样的问题。作品中的扳手如下:
- 在我的本地机器上工作正常。
- 当我将 webconfig 设置为使用 Edge 数据库时,在我的本地计算机上工作正常。(我真的以为这会让我解决它)
- SQL Profiler 显示了一个标准的 sql 查询连接查询(没有什么异常),它在独立运行时可以毫无问题地执行。
我完全被难住了,我正在寻找调试建议和其他任何东西一样多。除了在我的远程服务器上安装 Visual Studio,我还能做什么?
我知道有一种叫做 Intellitrace 的东西我可以使用,但是没有很好的教程解释这是否有帮助或如何让它工作(MSDN 页面很糟糕)。
在这一点上,欢迎提出任何建议。谢谢。
更多信息:
拉回某些实体时似乎出现错误,例如:
var myobjects = _context.SomeTable.ToList();
可能会出错,而var myobjects = _context.SomeTable.Select(c => new { ....... }.ToList();
工作正常。我仍然无法解释为什么它只会在远程服务器和本地执行此操作,即使连接到远程数据库,它也不会。