2016-01-23 70 views
-1

我注意到,如果我发送数组的webservice与数组参数,我遇到未处理的errorexception,但是,当我发送纯字符串,我可以发送Web服务上的数据与字符串参数。我搜索并按照线程来传递数组,但它不起作用。我错过了什么?C#wcf传递数组参数,遇到System.ServiceModel.FaultException

click to open the image

client side: 
LocalService.Service1Client a = new LocalService.Service1Client(); 

     LocalService.PersonalDetail[] Entity = new LocalService.PersonalDetail[1]; 
     LocalService.PersonalDetail Entity2 = null; 

     Entity2 = new LocalService.PersonalDetail(); 
     Entity2.Firstname = "TEST"; 
     Entity2.Lastname = "TEST"; 
     Entity2.Middlename = "TEST"; 
     Entity2.CreatedDate = DateTime.Today; 
     Entity[0] = Entity2; 

     a.Open(); 
     Console.Write(a.GetLookOutList(Entity)); 
     a.Close(); 




wcf server side. 
[ServiceContract] 
public interface IService1 
{ 
[OperationContract] 
string GetLookOutList(PersonalDetail[] obj); 
} 
public class Service1 : IService1 
{ 
public string GetLookOutList(PersonalDetail[] obj) 
    { 
     IResponse Lol = new LookOutList(obj); 
     return Lol.Response(); 
    } 
} 
    [DataContract(Name = "PersonalDetail")] 
public class PersonalDetail 
{ 

    [DataMember(Name = "Firstname")] 
    public string Firstname 
    { get; set; } 

    [DataMember(Name = "Middlename")] 
    public string Middlename 
    { get; set; } 

    [DataMember(Name = "Lastname")] 
    public string Lastname 
    { get; set; } 


    [DataMember(Name = "CreatedDate")] 
    public DateTime CreatedDate 
    { get; set; } 

    } 
+2

您需要让调试器运行并找出导致FaultException的基本异常。 – Paddy

+0

@Paddy对不起,我不明白, 你说我必须寻找基地的例外.. 我必须看看“base.channel。”。 ??或者我应该点击我发布的“查看详细信息” – porknbeans

+0

异常消息有足够的提示如何进一步处理并自行找到错误。你甚至读过它吗? – nvoigt

回答

1
public string GetLookOutList(PersonalDetail[] obj) 
{ 
    IResponse Lol = new LookOutList(obj); 
    return Lol.Response(); 
} 

其中一个内管线被抛出异常。

要验证,试试这个:

public string GetLookOutList(PersonalDetail[] obj) 
{ 
    return "TEST"; 
} 

这将工作。

现在您需要调试您的代码。将一个断点设置为第一行IResponse Lol = new LookOutList(obj);并开始调试过程。您可以在here的特定例外找到帮助。

+0

@nvgoit ... 好吧,这是尴尬..你的权利,事实证明,变量哈哈有一个问题... 谢谢你只需保存我的屁股:D,好吧,我现在开始重新编码该功能:) – porknbeans