C# DataContext()中的ArgumentNullException
我有一个Windows窗体应用程序,可以启动带有特定参数的.exe子进程。当我从命令行运行.exe时,它工作正常。但作为子进程(具有相同的参数),它在初始化DataContext对象期间崩溃,并在DataContext构造函数中引发fileOrServerConnection字符串的ArgumentNullException: 公共数据上下文(字符串文件或服务器连接,映射源映射) …这很奇怪,因为app.config已经映射了连接字符串。在这一点上,我唯一能想到的是与WF应用程序数据源(用于填充窗口菜单中的参数选项)存在一些冲突 从windows窗体启动子进程的代码(我编辑了一些可识别的部分:C# DataContext()中的ArgumentNullException,c#,datacontext,C#,Datacontext,我有一个Windows窗体应用程序,可以启动带有特定参数的.exe子进程。当我从命令行运行.exe时,它工作正常。但作为子进程(具有相同的参数),它在初始化DataContext对象期间崩溃,并在DataContext构造函数中引发fileOrServerConnection字符串的ArgumentNullException: 公共数据上下文(字符串文件或服务器连接,映射源映射) …这很奇怪,因为app.config已经映射了连接字符串。在这一点上,我唯一能想到的是与WF应用程序数据源(用于填充
Process p = new Process();
p.StartInfo.FileName = @"D:\...\amd64\tool.exe";
p.StartInfo.Arguments = queryBuilder.ToString();
p.StartInfo.WorkingDirectory = @"D:\...\amd64";
p.Start();
在包含子进程的项目中,DataContext对象的调用方式如下:
TagDataContext tag = new TagDataContext();
TagDataContext是使用DataContext设计器窗口添加的(从服务器资源管理器拖放).听起来好像根本找不到子进程的app.config。启动子exe时,child.config文件在哪里?当前目录是什么?哪个参数是
null
?该值来自哪里?您是否也可以在启动.exe的位置发布代码行?Windows窗体和应用程序and child.exe是单独目录中的独立项目,但位于同一解决方案下。child.config文件路径为:d:\…\solutiondir\tooldirectory\app.config windows窗体应用程序配置路径为:d:\…\solutiondirectory\winformappdirectory\app.configadd Debug.Assert(!file.Exists(path),“找不到.exe”)检查您是否在正确的目录中搜索,以及该文件是否确实存在