8

データベースと相互作用するクラスの標準的な命名規則(CRUDのものまたは重複のチェック)などはありますか?今、私はそれをHelperと名付けました。たとえば、「Subscriptions」という名前です。そのテーブルと対話するクラスは「SubscriptionHelper」という名前になります。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace LoopinWineBackOffice.Helper
{
    public class SubscriberHelper
    {
        public static bool IsEmailAlreadyInUsed(string email)
        {
            using (var dc = new LoopinWiineContainer())
            {
               return dc.Subscribers.Any(item => item.Email==email.Trim());
            }
        }
    }
}

私のサンプルコードはこのようなものです。

4

2 に答える 2

15

私の経験では[そして攻撃は意図されていません]クラスが「ヘルパー」や「マネージャー」のような名前を取得し始めたとき、それはそのクラスの目的が明確に定義されていないためです(そして私は過去にこれについて罪を犯しました)。

この場合、データアクセスパターンについてはあまり考えておらず、「SubscriptionHelper」クラスにアドホックSQLがたくさんあると思います。

これで、リポジトリパターンなどの標準のデータアクセスパターンを実装する場合、クラスはSubscriptionRepositoryと呼ばれ、その意図は非常に明確になります。

したがって、質問への回答として、いいえ、シナリオに標準の「命名規則」はないと思います。ただし、システムに適用できる可能性のあるいくつかの標準的なデザインパターンがあります。そうすることで、有益で意味のある命名規則になってしまう可能性があります。

よく知られているデザインパターンの出発点は次のとおりです。http://martinfowler.com/eaaCatalog/ですが、プロジェクトについて詳しく知らなければ、それ以上のことを指示するのは難しいでしょう。

于 2012-05-17T02:35:30.917 に答える
3

データベースと相互作用するクラスの標準的な命名規則などはありますか

はい、テーブルデータゲートウェイのパターンに従うのはどうですか。この場合、単一のテーブルまたはビューにアクセスするための「サブスクライバーゲートウェイ」オブジェクト(選択、挿入、更新、および削除)があります。

テーブルデータゲートウェイ:データベーステーブルへのゲートウェイとして機能するオブジェクト。 http://martinfowler.com/eaaCatalog/tableDataGateway.html

于 2012-09-19T07:33:46.243 に答える