Код: Выделить всё
git clone https://github.com/samxxxxx/voloabpwinformwrap.git
В модуле wry_test.web Project's wry_testwebmodule , регистрируя пользовательскую службу обертывания результатов. wrap_test.application.contracts в приложении Winforms:
Код: Выделить всё
2025-08-25 13:53:36 [Error] 系统异常
System.NullReferenceException: Object reference not set to an instance of an object.
at Volo.Abp.Http.Client.DynamicProxying.ApiDescriptionFinder.FindActionAsync(HttpClient client, String baseUrl, Type serviceType, MethodInfo method)
at Volo.Abp.Http.Client.DynamicProxying.DynamicHttpProxyInterceptor`1.GetActionApiDescriptionModel(IAbpMethodInvocation invocation)
at Volo.Abp.Http.Client.DynamicProxying.DynamicHttpProxyInterceptor`1.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at Castle.DynamicProxy.AsyncInterceptorBase.ProceedAsynchronous[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo)
at Volo.Abp.Castle.DynamicProxy.CastleAbpMethodInvocationAdapterWithReturnValue`1.ProceedAsync()
at Volo.Abp.Validation.ValidationInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync[TResult](IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
at WebsiteView.c__DisplayClass11_0.d.MoveNext() in WebsiteView.cs:line 70
--- End of stack trace frog ExecuteAsync(Func`1 asyncAction, String caption, String description) in WaitDialogForm.cs:line 166
at BindData() in WebsiteView.cs:line 61
at WebsiteView_Load(Object sender, EventArgs e) in WebsiteView.cs:line 82
at System.Threading.Tasks.Task.c.b__128_0(Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
шаги воспроизведения
В проекте wrap_test.httpapi. Модуль, замените код: < /li>
< /ol>
Код: Выделить всё
context.Services.AddWrapHttpClientProxies(
typeof(wrap_testApplicationContractsModule).Assembly,
RemoteServiceName
);
< /code>
с: < /p>
context.Services.AddHttpClientProxies(
typeof(wrap_testApplicationContractsModule).Assembly,
RemoteServiceName
);
< /code>
Исключить переопределение wry_test.dynamicproxing.wrapidescriptionfinder < /code> файл. < /p>
< /li>
call1, call2 или call3 в форме1. />system.nullReferenceException: ссылка на объект не установлен на экземпляр объекта < /p>
< /blockquote>
< /li>
< /ol>
Анализ < /strong> < /p>
Структура ответа: < /p>
Подробнее здесь: [url]https://stackoverflow.com/questions/79746350/abp-custom-warpresult-httpapi-client-return-null[/url]
Мобильная версия