ソリューションにWindowsフォームプロジェクトとWebサービスプロジェクトがあり、Webサービスを呼び出して、結果として顧客オブジェクトを返そうとしています。問題は、returnオブジェクトを受信しようとすると、変換できないというエラーが発生することです。たとえば、これが私のWebサービスの署名です。
Public Function GetDriverByID(ByVal DriverID As Integer) As Driver
そして、これが私がそれを呼び出すために使用しているコードです:
Dim d As Driver = mywebserviceinstance.GetDriverByID(1)
しかし、このコンパイル時エラーが発生します(wsDriversは、フォームプロジェクトに追加したWeb参照の名前です):「ProjectNamespace.Common.wsDrivers.Driver型の値をProjectNamespace.Common.Driverに変換できません」
この「共通」名前空間にはDriverクラスが含まれていますが、Webサービスからの戻りクラスが単なる一般的な「Driver」ではなく「wsDrivers.Driver」である理由がわかりません。変換できません。それを元に戻します。このタイプの不一致に対処する方法を知っている人はいますか?
編集:説明をありがとう-これは実際にそれが何をしているのかを明らかにします。ただし、プロキシの代わりに実際の型を使用するように強制できる方法はありますか(または、「実際の」インスタンスと「プロキシ」インスタンスの間で変換する方法はありますか)、または有線で送信する前にプロパティをシリアル化してから、戻り値を手動で逆シリアル化しますか?