質問者
/App_Code/下のクラスファイルのファイル名

全般的な情報交換
-
お世話になります。
以前からIISでWebサイトを開発していますが、機能が増えるに従い、
/App_Code/下の.csファイルがどんどん増えてしまい、収集が難しくなってしまったので、命名規則を作りました。命名規則としては、「複数のサイト間で共通するクラス」と「特定のサイトでのみ使用するクラス」によって分けられた名前空間によって、ファイル名も合わせています。
■クラスファイル例一覧
・MyCom.Common.cs :当社のサイト全体で共通的に使用するクラス郡
・MyCom.SiteA.cs :サイトAで共通的に使用するクラス群
・MyCom.SiteA.Member.cs :サイトAの会員用サービスで使用するクラス群
・MyCom.SiteA.Public.cs :サイトAの一般用サービスで使用するクラス群
・MyCom.SiteB.cs :サイトBで使用するクラス群
こうして作ったクラスファイルを、各サイトで以下のように配置しています。
■SiteAの会員用サービス
/App_Code/MyCom.Common.cs
/App_Code/MyCom.SiteA.cs
/App_Code/MyCom.SiteA.Member.cs■SiteAの一般用サービス
/App_Code/MyCom.Common.cs
/App_Code/MyCom.SiteA.cs
/App_Code/MyCom.SiteA.Public.cs■SiteB
/App_Code/MyCom.Common.cs
/App_Code/MyCom.SiteB.cs
このような形ですが、何か問題や将来的な懸念材料はありますでしょうか?
/App_Code/の配置例という、事例として普段あまり見かけないので、ご相談させていただきました。
一般的には、皆様どのように管理されているのか気になります。スッキリで拡張も容易な方法があれば、教えて頂ければ幸いです。よろしくお願い致します。
すべての返信
-
IIS のフォーラムで質問されてますが、質問内容からすると ASP.NET のフォーラムの方が適切だと思います。
App_Code フォルダを使っているということは、ASP.NET Web サイトプロジェクトで作る Web Forms アプリの話ですよね?
> このような形ですが、何か問題や将来的な懸念材料はありますでしょうか?
バージョン管理など将来の保守が大変かと思いますが、そのあたりを考えた結果ベストな方法としてそのように決めたということですよね? また、ソースファイルをそのまま置くことによるセキュリティの問題もあるかと思いますが、そのあたりも問題ないと判断されてのことですよね?
そうであれば、質問者さんの組織できちんと管理できるということで決められたのでしょうし、それらのクラスファイルの中身が分からない第三者が口を挟む余地はないように思いますが。
ただ、個人的な意見を言わせていただければ「複数のサイト間で共通するクラス」は .dll として作って Bin フォルダに配置するようにした方が、バージョン管理やセキュリティの面でよさそうな気がします。
-
-
SurferOnWww様
ご回答ありがとうございます。> IIS のフォーラムで質問されてますが、質問内容からすると ASP.NET のフォーラムの方が適切だと思います。
>
申し訳ありません、見落としていました。確かにASP.NETフォーラムに書き込むべき内容でした。>App_Code フォルダを使っているということは、ASP.NET Web サイトプロジェクトで作る Web Forms アプリの話ですよね?
>
はい、Webフォームです。> バージョン管理など将来の保守が大変かと思いますが、そのあたりを考えた結果ベストな方法としてそのように決めたということですよね?
> また、ソースファイルをそのまま置くことによるセキュリティの問題もあるかと思いますが、そのあたりも問題ないと判断されてのことですよね?
>
たしかに、組織体制や求めるセキュリティによってどう管理すべきか変わるため、その辺りの前提を書かなくては、答えようがありませんよね。
IISの管理も開発も単独でしており、その意味で言うと、保守の面で問題が起きそうです。> ただ、個人的な意見を言わせていただければ「複数のサイト間で共通するクラス」は .dll として作って
> Bin フォルダに配置するようにした方が、バージョン管理やセキュリティの面でよさそうな気がします。
>
なるほど、それはありますね。どっちが新しいファイルなのか戸惑うことがありましたので。ファイルの配置方法は、先述したように組織や機密性によってかわる事もあってか「こうすれば良い」的なガイドラインもないため、大変助かりました。ありがとうございました。