Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.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# 通过ADO实体公开存储过程的WCF web服务返回不同的数据结果_C#_Wpf_Wcf_Procedure - Fatal编程技术网

C# 通过ADO实体公开存储过程的WCF web服务返回不同的数据结果

C# 通过ADO实体公开存储过程的WCF web服务返回不同的数据结果,c#,wpf,wcf,procedure,C#,Wpf,Wcf,Procedure,我有一个非常简单的存储过程,返回2列1行数据 SELECT client_id, client_code FROM wv.client_identifiers WHERE (client_code = @client_code) AND (version = 0) AND (facility_id = @facility_id) AND (is_active = 1) AND (client_version = 0) 这张桌子不可能有重复的。在过去两年中,当我们在web

我有一个非常简单的存储过程,返回2列1行数据

SELECT client_id, client_code
FROM wv.client_identifiers
WHERE (client_code = @client_code) 
  AND (version = 0) 
  AND (facility_id = @facility_id) 
  AND (is_active = 1) 
  AND (client_version = 0)
这张桌子不可能有重复的。在过去两年中,当我们在web项目中测试此过程时,它按预期工作。在SSMS和Visual Studio服务器资源管理器中工作良好。当我们将此项添加到WCF服务项目的ADO.NET实体框架中时,问题就出现了

它看到了这个细节,创建了函数细节,复杂类型细节等等。我可以从WPF项目中调用这个细节,但是,返回的数据如果完全正确的话是不一致的

例如,我有3行

client_id client_code 
1001       1252
1002       6655
1003       123
1004       111
1005       5522
如果我通过带有参数的服务点击上述过程,它将返回错误的结果

using(var context = new service.MyService())
{
   var Clients = context.GetClientIDFromClient_Code(facility_id, true, client_code)

   foreach(var client in Clients)
   {
     int ClientID = client.client_id;
   }
  • 如果传入参数值5522,则得到空结果
  • 如果我传入参数值123,我将得到111的
    client_id 1004
    code
    的结果
  • 如果我传入参数值1252,我将得到
    客户机id 1004
    和代码111的结果
  • 如果我传入以
    1
    开头的任何内容,然后是我得到的相同结果
  • 如果我输入的任何内容不是以1开头,而是在DB中,并且应该返回,那么我得到null
不知道为什么WCF会导致挂断。我可以将其放入LINQtoSQL类数据库文件中,效果很好。我试着用很多不同的方法调用它,试着只返回一列或一个值,我试过了所有的方法。不确定它是否在所有类似于此的过程中都这样做,但如果我不得不猜测它会这样做的话


提前感谢

运行WCF调用时是否运行了SQL profiler?能否向我们展示表的结构?听起来好像您的列(虽然存储数值)是某种字符串类型。