Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查找/修复NullReferenceException时出现问题,Windows WCF服务应用程序_C#_Wcf_Debugging_Visual Studio 2013_Windows Store Apps - Fatal编程技术网

C# 查找/修复NullReferenceException时出现问题,Windows WCF服务应用程序

C# 查找/修复NullReferenceException时出现问题,Windows WCF服务应用程序,c#,wcf,debugging,visual-studio-2013,windows-store-apps,C#,Wcf,Debugging,Visual Studio 2013,Windows Store Apps,首先,这是我的第一篇帖子,如果我忽略了任何内容,请提前道歉。如果我做错了,请告诉我 我正在开发一个Windows8商店应用程序,并让它使用我制作的WCF服务。我的最终目标是从SQL数据库中提取数据并以图形的形式显示 为了隔离问题,我删除了sql部分(即使问题仍然存在),并从头创建了一个表,因此我的服务类如下所示: public class Service1 : IService1 { public DataSet querySql() { try

首先,这是我的第一篇帖子,如果我忽略了任何内容,请提前道歉。如果我做错了,请告诉我

我正在开发一个Windows8商店应用程序,并让它使用我制作的WCF服务。我的最终目标是从SQL数据库中提取数据并以图形的形式显示

为了隔离问题,我删除了sql部分(即使问题仍然存在),并从头创建了一个表,因此我的服务类如下所示:

public class Service1 : IService1
{

    public DataSet querySql()
    {
        try
        {
            DataSet ds = new DataSet();
            DataTable dt = ds.Tables.Add();

            dt.Columns.Add("Test", typeof(string));
            dt.Rows.Add(1, "Test1");
            return ds;
        }
在此,我尝试在windows应用程序中检索此数据,如下所示:

private async void LoadChartContents()
    {

        // create proxy instance
        DatabaseService.Service1Client serviceClient = new DatabaseService.Service1Client();

        // async call to wcf method to get returned data          
        DatabaseService.querySqlResponse ds = await serviceClient.querySqlAsync();
还有更多的方法,但它是打破了在最后一行的块我张贴。 在这里,我也遇到了调试器的问题。我试图改变一些设置,希望能更接近这个问题,但我不确定它是否有帮助。当它现在中断时,我会被带到App.g.I.cs,其中global::System.Diagnostics.Debugger.Break()在中突出显示

#if DEBUG && !DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION
        UnhandledException += (sender, e) =>
        {
            if (global::System.Diagnostics.Debugger.IsAttached) global::System.Diagnostics.Debugger.Break();
        };
#endif
“局部变量”选项卡中的异常表示“对象引用未设置为对象的实例” InnerException为null,源为System.ServiceModel,StackTrace为一个大的:

这看起来像是一个空指针异常,但我很难弄清楚它发生在哪里

我觉得
DatabaseService.querySqlResponse ds=wait serviceClient.querySqlAsync()中的ds
为null,因为它之前就是在这里中断的,但我不能确定,也不明白为什么会为null

再说一次,如果这不清楚,很抱歉。请让我知道应该包括哪些其他信息。提前感谢您的帮助:)

编辑: 多亏了gunr2171,我才能够进一步查明错误。现在它说:

发生致命异常“1”。 mscorlib.dll中发生类型为“System.ServiceModel.FaultException”1的首次意外异常

编辑:
唉,我还是迷路了,但如果我有任何进展,我会更新这篇文章。

你有一个尝试/捕获,所以你可能看不到发生异常的确切路线。点击
Ctrl+Alt+E
打开异常选项,然后选中
公共语言运行时异常下的
抛出
。这可能有助于跟踪异常。好的,我这样做了,它确实有帮助。现在,它用一条更详细的信息精确地指出了我怀疑的那条线。非常感谢。然而,我仍然不知道如何修复它。上面写着:FataException1发生了。mscorlib.dll中发生了类型为System.Servicemodel.FaultException“1”的第一个更改异常。请将您的帖子添加到您找到的新信息中。编辑按钮就在帖子标签下面。明白了,学习协议。我编辑了它WCF服务在哪里?它是在本地主机上还是在局域网上?如果在localhost上,您可能必须为应用程序启用环回访问。如果在LAN上,则必须在应用程序清单中声明专用网络功能。