インターネットでアクセス可能なビジネス オブジェクト データベース レイヤーを作成しようとしています。
次のようなデータベース アクセサ メソッドを呼び出したいと思います。
_databaseHander.Employee.SelectBetweenDates(date1, date2);
_databaseHandler.PayDetails.SelectAll();
_databaseHandler.BusinessArea.InsertAll(businessAreaData);
HTTP 経由で呼び出されると、これは次のように変換されます。
www.website.com/DatabaseObject/Employee/SelectBetweenDates/Date1=yyyyMMdd&Date2=yyyyMMdd
www.website.com/DatabaseObject/BusinessArea/InsertAll (will be sent as a post)
これがどのように行われるかはわかりません。次のようなものになると思います。
public class DatabaseHandler
{
private DatabaseContext _context;
public DatabaseHandler(DatabaseContext context)
{
_context = context;
}
public static class Employee
{
public static IEnumerable<EmployeeData> SelectBetweenDates(DateTime date1, DateTime date2)
{
return _context.Select(x=>x.FromDate <=date1 && x.ToDate>=date2);
}
}
}
これは「静的」の誤用のようです...そして、この方法でコーディングできるかどうかさえわかりません。どうすれば進められるかについて誰かアイデアがありますか?
メソッド呼び出しを分割しようとしている理由は、オートコンプリートが役立つようにするためです。_databaseHandler と入力します。データベース オブジェクトごとに 4 つまたは 5 つのメソッドは返されません。
また、クラスを部分クラスに分割して読みやすくし、10,000 行のクラスを回避したいと考えています。