私はこれが尋ねる前から愚かな質問だと感じますが、私の脳はあまりうまく機能しません。私は2つのWCFサービス "CountryService"と "FloristService"を持っています。WCFサービス間でDTOオブジェクトを共有
今CountryServiceは、次のような方法があります。これまでのすべての良い
bool AddFlorist(FloristDTO florist);
が、問題がFloristDTOがCountryDTOすなわち
を参照することです:IList<CountryDTO> GetAllCountries();
はさらに、FloristServiceは方法があります
public string Address1 { get; set; }
public string Address2 { get; set; }
public string Address3 { get; set; }
public string City { get; set; }
public string Postcode { get; set; }
public CountryDTO Country { get; set; }
public string Name { get; set; }
これは問題ありませんが、サービスプロキシを使用している場合は、util w (すなわち、視覚スタジオス参照の追加>サービス参照の追加)、CountryDTOの2つのバージョンが作成されます。つまり、FloristService.CountryDTOとCountryService.CountryDTOです。
ここで私はこれを克服するためのいくつかの方法を考えることができますが、それ以外は正しいようです。私はこれに "正しい"アプローチが何であるか疑問に思った。共通のDTOを共有するためにプロキシ生成ツールでできることは何かありますか?あなたはsvcutilで型を再利用することができます
乾杯、クリス
私はちょうど私が何であるか後で – Owen
これはサービス層と消費層の両方がDTOオブジェクトを持つ同じ.dllにアクセスすることを前提としています。私はsvutilがプロキシクラスを生成したい。しかし、私は一度だけそれらを生成し、サービス全体で共有したいですか? – Owen
次に、プロキシクラスを一度生成し、生成されたプロキシクラスをsvcutil/rを介して再利用して、プロキシを後で生成します。 –