0

ソリューションに 2 つのプロジェクトがあります。1 つは RentalService と呼ばれ、もう 1 つは RentalClient と呼ばれます。
RentalClient を使用して、RentalService に送信されて処理されるデータ (Rate、Days) を入力し、rate に日数を掛けて Price を返そうとしています。

サービスのコード ビハインドは次のとおりです。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;

namespace RentalService
{
    [ServiceContract]
    public interface ICalcPrice
    {
        [OperationContract]
        CalcPrice CalculatePrice(double price);
    }
    [DataContract]
    public class CalcPrice
    {
        [DataMember]
        public double Rate {get; set;}
        [DataMember]
        public int Days {get; set;}
        [DataMember]
        public double price {get; set;}
    }
}

ここにサービスコードがあります:私は困惑しているので完成しませんでした:/

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
using RentalClient;

namespace RentalService
{
    public class CalcPrice : ICalcPrice
    {
    public txtRate.text 

    }
}
4

2 に答える 2

1

RentalClient を使用して、RentalService に送信されて処理されるデータ (Rate、Days) を入力し、rate に日数を掛けて Price を返そうとしています。

RateandDaysをパラメーターとして受け入れるメソッドを定義する必要があります。インターフェイスでそのメソッドを定義しICalcPrice、クラスで実装しますCalcPrice

[ServiceContract]
public interface ICalcPrice
{
    [OperationContract]
    CalcPrice CalculatePrice(double price);

    [OperationContract]
    CalcPrice CalculatePrice(double price, int days);

}

次に、クラスで:

public class CalcPrice : ICalcPrice
{
     public CalcPrice CalculatePrice(double price, int days)
     {
       //your logic
      }
于 2013-02-12T05:52:09.233 に答える
0

サーバー側でコントラクトを変更するたびに、クライアント側で参照を更新することを忘れないでください。

ここに画像の説明を入力してください

これにより、コントラクトの更新を含む新しいwsdlがビルドされます。この後、2つのパラメータでCalculatePriceメソッドを使用できるようになります。

于 2013-02-12T09:04:22.933 に答える