私は現在、2つの異なるシステムを接続するための統合プロジェクトに取り組んでいます。
私の計画は、システムAがHTTP-POSTを介してシステムBにコマンドを発行できるようにHTTP-APIを設定することです。
コマンドは、SQLサーバーデータベースにCRUD命令を発行して、メンバーシップカードデータを取得および更新するために使用されます(例:'メンバーシップの作成'、'メンバーシップの更新'など)、データをXMLとしてシステムAに返します。n層の設計では、いくつかのプロパティを持つMembershipCardクラスが必要であることがわかっています。
public class MembershipCard
{
private string number;
private decimal points;
public string Number
{
get { return number; }
set { number = value; }
}
public decimal Points
{
get { return points; }
set { points = value; }
}
DALを呼び出すいくつかのメソッドとともに:
public string GetPoints(string cardnumber)
{
return MembershipCardDB.BalanceRequest(cardnumber);
}
ただし、静的DALクラスとしてこのアプローチを正当化するのは難しいです。MembershipCardDBは必要なすべての作業を実行しているようです(以下を参照)。
public static string BalanceRequest(string cardNumber)
{
string response = string.Empty;
string sqlselect =
"SELECT Balance " +
"FROM tbl_MemberShipCard " +
"WHERE Card_No = @cardNumber " +
"FOR XML PATH ('Card'), ROOT('CardBalance')";
using (SqlConnection connect = new SqlConnection("Data Source=TEST\\TEST;Initial Catalog=TEST;User Id=sa;Password=TEST"))
{
connect.Open();
using (SqlCommand command = new SqlCommand(sqlselect))
{
command.Parameters.AddWithValue("@cardNumber", cardNumber);
response = (string)command.ExecuteScalar();
}
}
return response;
}
MembershipCardクラスを削除し、データベースからデータをプルしてXMLとしてフォーマットするだけで、見落としているものはありますか?