私はこのコードを独自のアプリケーションで動作させています。しかし、最終的に終了するプロジェクトでこのコードを実行すると、例外が発生します。これは同じスタックトレースです。
未処理の例外が発生し、プロセスが終了しました。
アプリケーション ID: 28507bb0
プロセス ID: 14936
例外: System.NullReferenceException
メッセージ: オブジェクト参照がオブジェクトのインスタンスに設定されていません。
スタック トレース: System.Web.ThreadContext.AssociateWithCurrentThread (ブール値の setImpersonationContext) で System.Web.HttpApplication.OnThreadEnterPrivate (ブール値の setImpersonationContext) でSystem.Web.LegacyAspNetSynchronizationContext.Post(SendOrPostCallback コールバック、オブジェクト状態) で System.Threading.Tasks.SynchronizationContextAwaitTaskContinuation.PostAction(オブジェクト状態) で System.Threading.Tasks.AwaitTaskContinuation.RunCallback(ContextCallback コールバック、オブジェクト状態) state, Task& currentTask) --- 例外がスローされた前の場所からのスタック トレースの終わり --- System.Threading.Tasks で。System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(オブジェクトの状態) での AwaitTaskContinuation.b__1(オブジェクト s) executionContext、ContextCallback コールバック、オブジェクトの状態、ブール値の preserveSyncCtx) System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() で System.Threading.ThreadPoolWorkQueue.Dispatch() で System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() でSystem.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() で System.Threading.ExecutionContext.Run(ExecutionContext executionContext、ContextCallback コールバック、オブジェクト状態、ブール preserveSyncCtx) で System.Threading.ExecutionContext.Run で ContextCallback コールバック、オブジェクト状態、ブール値 preserveSyncCtx) System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() での .ThreadPoolWorkQueue.Dispatch()System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() で System.Threading.ExecutionContext.Run(ExecutionContext executionContext、ContextCallback コールバック、オブジェクト状態、ブール preserveSyncCtx) で System.Threading.ExecutionContext.Run で ContextCallback コールバック、オブジェクト状態、ブール値 preserveSyncCtx) System.Threading._ThreadPoolWaitCallback.PerformWaitCallback() での .ThreadPoolWorkQueue.Dispatch()
古いアプリは .net 4.0 で、VS 2012 で開き、そのソリューションの各プロジェクトを 4.5 にアップグレードしました。そのエラーは何も変わっていません。
コードが単独で動作するのに、このスタックトレースを他のアプリケーションでスローする理由はありますか?
private async Task<IList<InventoryItem>> GetPartsInfoAsync(string SearchText)
{
HttpClient client = new HttpClient();
IList<InventoryItem> partList = new List<InventoryItem>();
string address = ConfigurationManager.AppSettings["BaseUrl"] + ConfigurationManager.AppSettings["PartsSearch"] + "?login=" + ConfigurationManager.AppSettings["Login"] + "&apikey=" + ConfigurationManager.AppSettings["apiKey"] + "&search_token=" + SearchText + "&useExact=true";
try
{
HttpResponseMessage responseMessage = await client.GetAsync(address);
responseMessage.EnsureSuccessStatusCode();
//client.Timeout = System.TimeSpan.FromMilliseconds(50);
Parts.RootObject ArrowPartData = JsonConvert.DeserializeObject<Parts.RootObject>(await responseMessage.Content.ReadAsStringAsync());
if (ArrowPartData != null)
{
}
}
catch (HttpRequestException requestException)
{
throw requestException;
}
catch (Exception ex)
{
throw ex;
}
return partList;
}