データアクセス層またはその他のソースにデータを送信するには、次の2つの方法があります。
アプローチ1:リポジトリの方法:
public class User
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
public class UserRepository
{
public static void Add(User user)
{
// Add user logic
}
public static void Delete(User user)
{
// Delete user logic
}
public static User Get(int userid)
{
// Get user logic
}
}
使用法:
var user = new User
{
FirstName = "FirstName",
LastName = "LastName",
Age = 20
};
UserRepository.Add(user);
上記で、Userクラスを単純にしたことがわかりました。動作はありません。動作は別のクラスUserRepositoryに追加されます。
2番目のアプローチ:User.csでのみ追加/削除/取得などを維持する:
public class User
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
public void Add()
{
// Add user logic
}
public void Delete()
{
// Delete user logic
}
public User Get()
{
// Get user logic
}
}
使用法:
var user = new User
{
FirstName = "FirstName",
LastName = "LastName",
Age = 20
};
user.Add();
上記では、User.csでのみ動作を維持しています。2つのアプローチはどちらも、ユーザーの追加、削除などの目的を果たします。教えてもらえますか
どちらのアプローチが良いですか?
上記の2つのアプローチのどちらを選択する必要があるかをいつ決定するのですか?
FindAllUsers、 FindUserByUserId、DeleteUserByUserIdなどの他のメソッドも追加する必要がある場合、どちらのアプローチを選択する必要がありますか?