为什么WCF服务没有在客户端返回相同的类列表? [英] why WCF service is not returning same list of class at client side ?

查看:50
本文介绍了为什么WCF服务没有在客户端返回相同的类列表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家都好,



以下是我在WCF服务的Iservice.vb文件中定义的类:



Hi all coders,

Below is my defined class in Iservice.vb file on WCF service :

<DataContract>
Public Class DenialDispute
    <DataMember()>
    Private _Age As Integer
    <DataMember()>
    Private _Flg As Integer
    <DataMember()>
    Private _PESysId As Integer

    Public Sub New(Age As Integer, Flg As Integer, PESysId As Integer)
        Me._Age = Age
        Me._Flg = Flg
        Me._PESysId = PESysId
    End Sub
End Class





下面是返回已定义类列表的方法的操作合同:





Below is operation contract for method which is returning list of defined class :

<OperationContract()>
    Function GetDenialDispute(ByVal storeProcedure As String, ByVal clientId As String, ByVal UserId As String, ByVal recStatus As String) As List(Of DenialDispute)





以下是Service1.svc.vb中的方法:





Below is method in Service1.svc.vb :

Public Function GetDenialDispute(ByVal storeProcedure As String, ByVal clientId As String, ByVal UserId As String, ByVal recStatus As String) As List(Of DenialDispute) Implements IService1.GetDenialDispute
       Return cls.GetDenialDispute(storeProcedure, clientId, UserId, recStatus)
   End Function





以下是我的功能实际上商店程序正在执行:





Below is my function where actually store procedure is executing :

Public Function GetDenialDispute(ByVal storeProcedure As String, ByVal clientId As String, ByVal UserId As String, ByVal recStatus As String) As List(Of DenialDispute)
       Dim lstDenialDispute As List(Of DenialDispute) = New List(Of DenialDispute)()
       Using connection As New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("constr").ConnectionString)
           Using command As New SqlCommand(storeProcedure, connection)
               command.CommandType = CommandType.StoredProcedure
               connection.Open()
               command.Parameters.AddWithValue("@ClientSysID", clientId)
               command.Parameters.AddWithValue("@UserID", UserId)
               command.Parameters.AddWithValue("@RecStatus", recStatus)

               Using reader = command.ExecuteReader()
                   While reader.Read()
                       lstDenialDispute.Add(New DenialDispute(reader("Age").ToString(), reader("Flg").ToString(), reader("PE").ToString()))
                   End While

               End Using

           End Using
       End Using
       Return lstDenialDispute

   End Function







现在来自客户端我有在WCF函数之上调用以下句子编码:






now come at client side i have coded below sentence which is calling above WCF function :

Dim listDenialDispute As List(Of ServiceReferenceTest.DenialDispute) = New List(Of ServiceReferenceTest.DenialDispute)(cntTest.GetDenialDispute("storeprocedure", "client","user", "1"))





所以在调用该方法之后WCF返回列表下方并使用正确的属性,如_Age,_ Flg和PeSysID



但是在客户端上我正在获得_Age,_ AgeField,_ AgeFieldSpecified,_ AgeFieldSpecified



你可以建议为什么WCF添加_AgeField,_ AgeFieldSpecified ,_ AgeFieldSpecified自动???



提前致谢



so after calling that method WCF returning below list with correct properties like "_Age","_Flg" and "PeSysID"

but on client side i am getting "_Age","_AgeField","_AgeFieldSpecified","_AgeFieldSpecified"

can you suggest on why WCF added "_AgeField","_AgeFieldSpecified","_AgeFieldSpecified" automatically ???

Thanks in advance

推荐答案

这篇关于为什么WCF服务没有在客户端返回相同的类列表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆