私は、既存のWeb APIからいくつかのメソッドを実行できるコンソールアプリケーションを開発中です。コンソールアプリケーションで返されるステータスコードを書きたいと思っていますが、動作する構文を見つけるのには苦労しています。Web APIのメソッドからHTTPステータスコードをmainに戻すにはどうすればよいですか?
たとえば、ここではウェブのレスポンスを除いて、現在動作しているアップデート方法があります。
Console.WriteLine("Please enter a valid order item number for the specific data you want to update:");
string oNum = Console.ReadLine();
//more prompts for user to enter data to update
...
var update = _service.UpdateOrder(oNum, oProc, oProcDate, oComplete);
Console.WriteLine("Status code: {0}", (update.StatusCode));
なぜ私の現在のステータスコード応答が機能しないのか理解しています。私は他の多くのことを試してきましたが、今のところ止まっています。私は何が欠けていますか?あなたはUpdateOrder
方法からstream
を戻ってきていることをあなたが持っている問題がある
public List<Stream> UpdateOrder(string orderID, bool processing, DateTime procDate, bool Complete)
{
var request = new RestRequest(StreamUrl, Method.PUT)
{
RequestFormat = DataFormat.Json
};
request.AddParameter("OrderID", orderID);
...
var response = _client.Execute<List<Stream>>(request);
if (response.StatusCode == System.Net.HttpStatusCode.Created || response.StatusCode == System.Net.HttpStatusCode.OK)
return response.Data;
else
throw new Exception("Invalid input. Table could not be updated.");
'_service.UpdateOrder'は実際に何を返しますか? –
_serviceは、WebMethodsを.aspxファイルまたは.asmxファイルでラップするWebReferenceであると仮定する必要がありますか?その場合、MSによって生成されたWebReferenceコードは、あなたのために任意のHTTPステータスを処理しようとし、失敗ステータスのいずれかに対して例外をスローします。 –
私は 'UpdateOrder'コード@JamieRを追加しました – joey8oro