これは、レイヤー間の通信方法について説明したquestionが見つかりました。 もう1つの側面があります。私は既存の上書きを確認します確認ボックスが欲しいUIを使用したUI BLL通信
public interface IUiCallbacks
{
void SendMessage(string message);
void SendException(string message, Exception ex);
}
public class WinFormsUiCallbacks : IUiCallbacks
{
public void SendMessage(string message)
{
MessageBox.Show(message);
}
public void SendException(string message, Exception ex)
{
MessageBox.Show(string.Format("Unfortunately, the following errror has occurred:{0}{1}", Environment.NewLine, ex.Message));
}
}
public class OrderService
{
private IUiCallbacks _iUiCallbacks;
...
public OrderService() { ... }
public OrderService(IUiCallbacks iUiCallbacks)
{
_iUiCallbacks = iUiCallbacks;
}
...
public void AddOrder(Order order)
{
...
if(OrderAlreadyExists(order))
{
if(_iUiCallbacks != null)
_iUiCallbacks.SendMessage("The order can not be added, because it is already accepted.");
return;
}
...
}
...
}
代わりの情報メッセージ:私はfolowingの例に見られるようなUIにBLLからのメッセージを送信するためのインターフェイスを使用していますと仮定
注文。
この場合、確認ボックスの結果はどうすれば処理できますか?
おかげで、 アレックス