私はwcf Serviceを使用してDBにデータを挿入しています。あるWCFサービスメソッドから他のWCFメソッドに例外を渡し、そこからクライアントに例外をスローします。こここの再スロー例外は何が問題になりますか?
マイコードである:WCFサービスの
データの挿入方法:サービス公開されたメソッド(パブリック)
public int insertLocation (string name)
{
try
{
// this method communicates with client
dataconnection.insertStatements(cmd);
}
catch
{
throw; // Here i'm getting error
}
}
あるDB
にデータを挿入する方法
public int insertStatements(SqlCommand cmd)
{
Try
{
//insert data to the db
}
catch(SqlException ex)
{
if (ex.Number == 2627) // if unique key constraint error
{
throw new FaultException("error reason", new FaultCode("Error Code: ");
}
else
{
throw new FaultException("DB error: ", new FaultCode("Error Code: " +);
}
}
catch (FaultException ex)
{
throw new FaultException("Unknown Error",new FaultCode("Unknown Error"));
}
}
WCF挿入位置法、
私のクライアント:winformアプリケーション
try
{
AreaDataServicesClient DataObject = new AreaDataServicesClient("BasicHttpBinding_IAreaDataServices");
int rowsAffected = DataObject.InsertProvince(ProvinceObject.AreaName, ProvinceObject.AreaKm);
return rowsAffected;
}
catch(FaultException ex)
{
messagebox.show("erro occured");
}
これは私が取得エラーです: 「はタイプ 『System.ServiceModel.FaultException』の例外がEMSDataServices.dllで発生したが、ユーザーコードで処理されなかった」サービスメソッドが例外を渡さないのはなぜ
クライアント。
:
は、これと同じですか? –
@BJMyers私はコードでそれを言及しました – Mohsin