- - PR -
共通ライブラリクラスについて
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-04-22 18:45
C#でプログラムを複数作ろうとしています。
各プログラムで共通する処理をメソッド化して、1つのクラスに定義するのですが、 VisualStudioのC#では、共通メソッドを含んだクラスのCSファイルをプロジェクトに追加すると、そのプロジェクトのフォルダにコピーされてしまいます。 これでは共通化している意味がありません。 共通メソッドクラスに変更がないのなら、結果的には共通化していることになっているかもしれませんが、もし変更を入れる場合には、そのCSファイルを追加しているC#プロジェクト全てに対して変更が必要になります。 共通クラスをDLL化すれば、上記問題は解決しますが、DLL化しないで、C#プロジェクトで同じ場所にあるCSファイルを参照することは実現できないのでしょうか? [ メッセージ編集済み 編集者: NEO 編集日時 2006-04-22 18:45 ] | ||||
|
投稿日時: 2006-04-22 19:14
追加→既存項目の追加で「追加」ボタンの横にある▼ボタンを押すとできます。 以前、僕も同じところでつまずきました。 | ||||
|
投稿日時: 2006-04-22 19:41
Delphiではできたんですがねぇ。
名前空間の概念があるので、無理なんでしょうか・・・ 複数の名前空間を持ったクラス(しかもDLLなし)で、EXEを構成することは可能なんでしょうか? | ||||
|
投稿日時: 2006-04-22 20:34
DLL にするのが唯一の解決策だと思いますが、したくない理由はなんでしょうか? 理由によっては他の解決策が提案できるかもしれません。 _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2006-04-22 20:59
理由はモジュール(EXE、DLL)を少なくしたいだけです。
Delphiでできた(VBでもできそうですね)ので、そうしたかったのですが、本来はできる方が普通じゃないような気がしてきました。 JavaでもCでもDLLやCLASSが必要ですし。 ところで、EXE内で複数の名前空間を持つことは出来ますか? | ||||
|
投稿日時: 2006-04-22 21:18
アセンブリ、モジュールと名前空間は別の概念なので、出来ます。 _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2006-04-22 23:25
VBやDelphiではできるのに、C#ではなぜできないんでしょうか? | ||||
|
投稿日時: 2006-04-22 23:33
具体的にはどのような機能を指していますか? R・田中一郎さんが仰っているリンクではないのでしょうか? _________________ 囚人のジレンマな日々 |