tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルWindowsアプリとWebサービス間のデータ渡しについて
記事No7933
投稿日: 2008/08/12(Tue) 07:43
投稿者TnR
初めまして。宜しくお願いします。
VB.NET 2005、OSは XP です。

WebMethod に引数を渡したいのですが、
方法が分からず困っています。
(String や Object()、DataSetとXmlNode は渡せるのですが、
 自作クラスを渡したいと思います)

やりたいことは、
1、WindowsアプリからWebMethodをコール
2、WebMethodでは、渡されたデータを元にDB接続
3、DataSetをWindowsアプリに返却
です。

自作クラスをクラスライブラリで作成し、
それをアプリとサービスでImportsしようとすると、
アプリ側で「キャストできません」というコンパイルエラーとなってしまいます。

よく見ると、WebMehodの引数に自作クラスを指定しているのに、
Reference.bvでは Object配列になってしまっていました。
(コンパイラには、MyControl.MyClass から アプリ名.MyClass へキャストできない
 と言われていまいます。「アプリ名」にはMyClssはないのですが・・・。)


みなさんはどのようにして引数で渡しているのでしょうか?
(自作クラスで受け渡しをしないのでしょうか?)

もしかすると、根本的にやり方が間違っているのかも知れませんが、
サンプルが見つけられず、行き詰っています。

直接的な解決策でなく、ヒント・参考URLでも充分だと思います。
よろしくお願いします。

[ツリー表示へ]
タイトルRe: WindowsアプリとWebサービス間のデータ渡しについて
記事No7972
投稿日: 2008/08/18(Mon) 17:20
投稿者るしぇ
WEBアプリやってないので見当違いの回答になるかもしれないけど、
回答がつかないようなので。

>それをアプリとサービスでImportsしようとすると、
まず、ここがどういう操作をやっているのか分かりません。
Imports は必ずしも必要ないと思うんですけど、何故
その操作をしてますか?

また、具体的に説明すると、どういうコードや手順(例えばソリューション
エクスプローラで、プロジェクトの右クリックメニューから、プロパティ
画面を開いて…とか)で何をすることを
>Importsしようとする
と表現してますか?

結局のところ、クラスライブラリの利用は参照設定だけきっちり
できていればいいと思っているので、何か余分なことをやってるように
思うのですが、何をしているのか掴めませんでした。

>(コンパイラには、MyControl.MyClass から アプリ名.MyClass へキャストできない
> と言われていまいます。「アプリ名」にはMyClssはないのですが・・・。)
まずはコンパイラを信じてみましょう。
  Dim obj As アプリ名.MyClass
と書いたときにエラーになりますか?ならなければ『ある』ということです。
上記コードの MyClass の部分を選択した状態で右クリックメニューから
[定義へ移動]してみてください。
エラーになる場合は、エラーの正確な文章を教えてください。

[ツリー表示へ]