- PR -

[ASP.NET]ユーザーコントロールについて

1
投稿者投稿内容
未記入
会議室デビュー日: 2005/07/28
投稿数: 6
投稿日時: 2005-07-28 23:49
皆さん、こんばんは。
現在、既存のASPプログラムをASP.NETへの移行を行っています。

ユーザーコントロールをインタフェースを持たない関数ライブラリとして
使用しようと思っています。
(現在のincファイルをascxファイルに変更しようと考えています。)

その中で、ascxファイルの関数から別のascxファイル内の関数を使用したいのですが、
宣言されていませんというエラーが出てしまいます。

ascxファイルの関数から別のascxファイル内の関数は使用できないのでしょうか?

申し訳ありませんが、ご教授願います。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-07-29 05:53
 状況がよく見えないのですが、、、


引用:

ユーザーコントロールをインタフェースを持たない関数ライブラリとして使用しようと思っています。
(現在のincファイルをascxファイルに変更しようと考えています。)


 inc ファイルって、なんでしょう?
 .ascx ファイルは、同じアプリケーションドメインでしか使えませんが、それは大丈夫でしょうか。


引用:

その中で、ascxファイルの関数から別のascxファイル内の関数を使用したいのですが、宣言されていませんというエラーが出てしまいます。


 private, protected なメソッドにはアクセスできませんが、そういうことではなく?アクセス指定子を省略すると、 private になりますよ。
_________________
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-07-29 09:07
お早うございます。

引用:

ユーザーコントロールをインタフェースを持たない関数ライブラリとして
使用しようと思っています。


ユーザーインターフェースを持たない、ってことですよね?
であれば、普通に、クラスにしてしまえば良いような気がします。
いわゆる関数ライブラリであれば、共有(VBならShared、C#ならstatic)メソッドにすればいいと思いますし、言語がVBなら、標準モジュールを使うという手もあります。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-07-29 09:15
Jittaさん、お早うございます。

引用:

 inc ファイルって、なんでしょう?


ASP インクルードファイルの事だと思います(いわゆるソースレベルでの分離の為のものですね)。
Gun
常連さん
会議室デビュー日: 2005/01/24
投稿数: 23
投稿日時: 2005-07-29 09:42
引用:

ascxファイルの関数から別のascxファイル内の関数は使用できないのでしょうか?



ascxから別のascxを呼ぶことは可能です。(実験したことある)
なので、きっと関数は呼べると思います。
しかし、そもそもの使い方が異なる気がします。
きくちゃんさんが仰っているように、sharedのメソッド等で関数ライブラリを作った方がよいです。
少なくともうちはそのように、aspからasp.netへ移行しました。
未記入
会議室デビュー日: 2005/07/28
投稿数: 6
投稿日時: 2005-07-29 11:10
ありがとうございます。

引用:
--------------------------------------------------------------------------------


 inc ファイルって、なんでしょう?

--------------------------------------------------------------------------------
きくちゃんさんのおっしゃる通り、ASP インクルードファイルです。
共通関数や共通定数をincファイルにまとめています。


引用:
--------------------------------------------------------------------------------

いわゆる関数ライブラリであれば、共有(VBならShared、C#ならstatic)メソッドにすればいいと思いますし、言語がVBなら、標準モジュールを使うという手もあります。

--------------------------------------------------------------------------------
ということは、ascxファイルではないという事ですか??
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-07-29 18:23
こんばんは。

引用:

ということは、ascxファイルではないという事ですか??


そうです。
ソリューションエクスプローラを右クリックして「新しい項目の追加」で、「モジュール」か「クラス」を選びます。
「クラス」とか「モジュール」とかって、一体何者なの? って話なら、モジュールの事は忘れて、クラスについて調べてみて下さい。

【追記】
あ。もしかして、ascx ファイルに <% %> タグ使って関数を書いてたりして。
で、それを直接 aspx 側から呼び出そうとしてたりしません?
#さすがにそれはないか…。

[ メッセージ編集済み 編集者: きくちゃん 編集日時 2005-07-29 18:29 ]
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-07-29 22:10
 ASP.NET ということなので、モジュールは使わない方が吉です。

 変数を使わないなら、大丈夫だけど。
_________________
1

スキルアップ/キャリアアップ(JOB@IT)