none
/App_Code/下のクラスファイルのファイル名 RRS feed

  • 全般的な情報交換

  • お世話になります。
    以前から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/の配置例という、事例として普段あまり見かけないので、ご相談させていただきました。
    一般的には、皆様どのように管理されているのか気になります。スッキリで拡張も容易な方法があれば、教えて頂ければ幸いです。

    よろしくお願い致します。

    • 種類を変更済み 佐伯玲 2015年2月24日 1:29 情報を広く募る情報交換向けの内容であったため
    • 移動 佐伯玲 2015年2月24日 4:40 Internet Information Services - 全般 から ASP.NET へ
    2015年2月23日 6:11

すべての返信

  • IIS のフォーラムで質問されてますが、質問内容からすると ASP.NET のフォーラムの方が適切だと思います。

    App_Code フォルダを使っているということは、ASP.NET Web サイトプロジェクトで作る Web Forms アプリの話ですよね?

    > このような形ですが、何か問題や将来的な懸念材料はありますでしょうか?

    バージョン管理など将来の保守が大変かと思いますが、そのあたりを考えた結果ベストな方法としてそのように決めたということですよね? また、ソースファイルをそのまま置くことによるセキュリティの問題もあるかと思いますが、そのあたりも問題ないと判断されてのことですよね?

    そうであれば、質問者さんの組織できちんと管理できるということで決められたのでしょうし、それらのクラスファイルの中身が分からない第三者が口を挟む余地はないように思いますが。

    ただ、個人的な意見を言わせていただければ「複数のサイト間で共通するクラス」は .dll として作って Bin フォルダに配置するようにした方が、バージョン管理やセキュリティの面でよさそうな気がします。

    2015年2月23日 7:51
  • こんにちは、fskkoba さん
    フォーラムオペレータの佐伯 玲 です。

    SurferOnWww さんからご指摘いただいております通りASP.NET絡みであれば私のほうからそのままスレッドを「ASP.NET」フォーラムへ移動することも可能ですのでご確認くださいね。
    また今回のご投稿は内容としては何か特定の回答を導き出す「質問」よりも幅広い情報を求める「全般的な情報交換」のほうが適しているのではないかと思い私のほうからスレッド形式を変更させていただきますね。


    宜しくお願い致します。

    TechNet Community Support 佐伯 玲

    2015年2月24日 1:28
  • SurferOnWww様
    ご回答ありがとうございます。

    > IIS のフォーラムで質問されてますが、質問内容からすると ASP.NET のフォーラムの方が適切だと思います。
    >
    申し訳ありません、見落としていました。確かにASP.NETフォーラムに書き込むべき内容でした。

    >App_Code フォルダを使っているということは、ASP.NET Web サイトプロジェクトで作る Web Forms アプリの話ですよね?
    >
    はい、Webフォームです。

    > バージョン管理など将来の保守が大変かと思いますが、そのあたりを考えた結果ベストな方法としてそのように決めたということですよね?
    > また、ソースファイルをそのまま置くことによるセキュリティの問題もあるかと思いますが、そのあたりも問題ないと判断されてのことですよね?
    >
    たしかに、組織体制や求めるセキュリティによってどう管理すべきか変わるため、その辺りの前提を書かなくては、答えようがありませんよね。
    IISの管理も開発も単独でしており、その意味で言うと、保守の面で問題が起きそうです。

    > ただ、個人的な意見を言わせていただければ「複数のサイト間で共通するクラス」は .dll として作って
    > Bin フォルダに配置するようにした方が、バージョン管理やセキュリティの面でよさそうな気がします。
    >
    なるほど、それはありますね。どっちが新しいファイルなのか戸惑うことがありましたので。

    ファイルの配置方法は、先述したように組織や機密性によってかわる事もあってか「こうすれば良い」的なガイドラインもないため、大変助かりました。ありがとうございました。

    2015年2月24日 4:31
  • 佐伯様

    ご指摘ありがとうございます。

    > SurferOnWww さんからご指摘いただいております通りASP.NET絡みであれば
    > 私のほうからそのままスレッドを「ASP.NET」フォーラムへ移動することも可能ですのでご確認くださいね。
    >
    おっしゃるとおり、ASP.NETフォーラムが適切だと思います。
    フォーラム間の移動をして頂けるということでしょうか?
    もう1つのスレッド形式の変更についても同意なので、可能であれば変更を希望します。

    当方で行うべき操作があればご指示下さい。

    2015年2月24日 4:36
  • fskkoba さん

    私のほうでスレッドの移動と種類の変更をさせていただきました。

    fskkoba さんのほうで特に行うべき操作はないのでご安心くださいませ。

    引き続きMSDN /TechNet フォーラムを宜しくお願い致します。


    TechNet Community Support 佐伯 玲

    2015年2月24日 4:41