- - PR -
WebアプリとWindowsアプリでのDLL共有
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-01-05 20:55
こんにちわ
ASP.NET+VB.NETでWebシステム開発を行っています 平行してバッチプログラムもVB.NETのEXEで作成しているのですが ※IISサーバとバッチプログラムが動作するマシンは一緒です ビジネスロジックの部分がWebとバッチの両方で共有される可能性があり .NET開発は初めてのため、どのような形で作成しようか迷っています ビジネスロジック部分をクラス化してDLLとして作成し、Webシステムとバッチプログラムから うまいこと参照できないかなと考えているのですが ちょっと試してみるとWebシステムでDLL参照を行うとsetup作成時にDLLが含まれるように見えました これではバッチを直してDLLを差し替えるときにWeb側の再セットアップが発生するのかな?と思っているのですが そのあたりを含めてメリット、デメリットが見えなくて困っています やはりソースファイルだけ共有してバラバラにしたほうが保守はしやすいのでしょうか・・・ よろしくお願いします。 | ||||||||
|
投稿日時: 2006-01-06 00:55
こんにちは。
「setup作成時」というのが何を指すのかいまいち分からなかったのですが、共通部分を別アセンブリにするという方向は正しいと思われます。
どうしたいかによります。 共通部分のアセンブリが修正、バージョンアップ等で変更になったとき、以前のバージョンのアセンブリを参照したままでいたいか、新しいアセンブリを参照したいか。 通常はアセンブリに厳密名つけて、どこか便利な場所に配置しおけば良いでしょう。その場所はアプリケーションの構成ファイルに書くなりして下さい。(GAC に登録するという手もありますが、今回は大げさかもしれませんね) バージョン・リダイレクトという機能もあるので、バージョンアップ時にも便利です。 キーワードは羅列したので、少し調べてみてください。 もちろん、それぞれのプライベートに共通アセンブリのコピーをただ置くだけでもよいでしょう。 _________________ 囚人のジレンマな日々 | ||||||||
|
投稿日時: 2006-01-06 01:08
NAL-6295です。
補足として、 webアプリケーション(ASP.NET1.x)においては、 厳密名をつけた場合、GAC登録が必須となります。 GACに登録しない場合は、厳密名を設定してはいけません。 参考までに、 .NETエンタープライズWebアプリケーション開発技術大全Vol.4 セキュアアプリケーション設計編 の訂正ページ http://bpstore.nikkeibp.co.jp/nsp/teisei/mcs_vol4.html | ||||||||
|
投稿日時: 2006-01-06 15:09
>囚人さん
>NAL-6295さん ご返答ありがとうございます アセンブリ、GACについて調べてみました 厳密にモジュールを共有する方法はあるようですね できる、できないがわかっただけでも大変助かりました 方法がいくつかわかった上で、ビジネスロジックの共有率と運用上の影響を考えたのですが それぞれのプライベートに共通アセンブリのコピーを置く形での実装がベターのような気がしてきましたので、そちらの方向で考えてみたいと思います・・・ 大変参考になりました、ありがとうございました! |
1