Я работаю с Visual Studio 2010 и .NET 4.0. Я создал один веб-метод, и я пытаюсь назвать его сложным объектом (объект класса класса) в качестве параметра, но он вызывает ошибку «Ссылка на объект не установлена в экземпляр объекта». Пожалуйста, помогите мне, как исправить это. WCF, как показано ниже:Как передать сложный объект WCF
[ServiceContract]
public interface IService
{
[OperationContract]
void DoWork();
[OperationContract]
void RedirectDeposit(string TransactionId, Amount amount);
}
public class Service : IService
{
public void DoWork()
{
}
public void RedirectDeposit(string TransactionId, Amount amount)
{
string transactionId = "";
string tranAmount = "";
string tranCurrency = "";
string exchangeRate = "";
try
{
transactionId = TransactionId;
tranAmount = amount.Amt;
tranCurrency = amount.Currency;
exchangeRate = amount.Rate.ExRate;
}
catch (Exception ex)
{
Utility.LogMsg("Amount : " + ex.Message);
}
}
}
[DataContract]
public class Amount
{
[DataMember]
public string Amt { get; set; }
[DataMember]
public string Currency {get; set; }
[DataMember]
public ExchangeRate Rate { get; set; }
}
[DataContract]
public class ExchangeRate
{
[DataMember]
public string ExRate { get; set; }
}
Client вызова, как показано ниже:
playtechsrv.ServiceClient service = new ServiceClient();
Amount amount = new Amount();
try
{
// Put user code to initialize the page here
amount.Amt = "10";
amount.Currency = "USD";
amount.Rate.ExRate = "1255"; // Error happen here
}
catch (Exception ex)
{
Utility.LogMsg(ex.Source);
}
Привет, это работает. Большое спасибо. – sithuwin
Добро пожаловать. – khlr