2017-02-17 6 views
0

При интеграции Power bi в работу mvc (.net) 4.6.2)Метод не найден: 'Void Microsoft.PowerBI.Api.V1.PowerBIClient..ctor (Microsoft.Rest.ServiceClientCredentials, System.Net.Http.DelegatingHandler [])'

Ошибка ниже.

Способ не найден: Void Microsoft.PowerBI.Api.V1.PowerBIClient..ctor(Microsoft.Rest.ServiceClientCredentials, System.Net.Http.DelegatingHandler[]).

на

var credentials = new TokenCredentials(accessKey, "AppKey"); 

var client = new PowerBIClient(credentials) 
{ 
    BaseUri = new Uri(apiUrl) 
}; 

установлен

Microsoft.PowerBI.Core 1.1.6.17045

Microsoft.Rest.ClientRuntime

Microsoft.PowerBI.Api 1.1.6.17045

stacktrace:

на DSLUI.Controllers.ReportsController.Index() в Е: \ ДМ \ DSLServices \ DSLUI \ Контроллеры \ ReportsController.cs: линия 53 на lambda_method (Закрытие, ControllerBase, Object []) в System.Web.Mvc .ActionMethodDispatcher.Execute (ControllerBase контроллер, Object []) параметры в System.Web.Mvc.ReflectedActionDescriptor.Execute (ControllerContext controllerContext, IDictionary 2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary 2 параметры) в System.Web.Mvc.Async.AsyncControllerActionInvoker.b__39 (IAsyncResult AsyncResult, ActionInvocation innerInvokeState) на System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult 2.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() в System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod (IAsyncResult AsyncResult) в System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3d() в System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters. <> c__DisplayClass46.b__3f() at System.Web.Mvc.Async.AsyncControllerActionInvoker. <> c__DisplayClass33.b__32 (IAsyncResult AsyncResult) на System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() в System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters (IAsyncResult AsyncResult) в System.Web .Mvc.Async.AsyncControllerActionInvoker. <> c__DisplayClass21. <> c__DisplayClass2b.b__1c() at System.Web.Mvc.Async.AsyncControllerActionInvoker. <> c__DisplayClass21.b__1e (IAsyncResult AsyncResult) на System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() в System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction (IAsyncResult AsyncResult) в System.Web .Mvc.Controller.b__1d (IAsyncResult AsyncResult, ExecuteCoreState innerState) на System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() в System.Web.Mvc.Controller.EndExecuteCore (IAsyncResult AsyncResult) в системе .Web.Mvc.Controller.b__15 (IAsyncResult asyncResult, контроллер контроллера) в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() at System.Web.Mvc.Controll er.EndExecute (IAsyncResult AsyncResult) на System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute (IAsyncResult AsyncResult) на System.Web.Mvc.MvcHandler.b__5 (IAsyncResult AsyncResult, ProcessRequestState innerState) в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid 1.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase 1.End() в System.Web.Mvc.MvcHandler.EndProcessRequest (IAsyncResult AsyncResult) на System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest (IAsyncResult результат) на System.Web.HttpApplication .CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() на System.Web.HttpApplication.ExecuteStep (IExecutionStep шаг, Boolean & completedSynchronously)

любая помощь пожалуйста ..

+0

Вы читали документацию или просмотреть определение класса 'PowerBIClient', чтобы увидеть, какие параметры ожидаются конструктором? –

+0

да прочитайте документ и примерный код скачать здесь https://docs.microsoft.com/en-us/azure/power-bi-embedded/power-bi-embedded-get-started-sample. и его работоспособность. В моем случае у меня есть проект с .NET Framework 4.0 i, обновленный 4.6.2 и добавленный выше dll, 0 build errors.but во время выполнения im, получающее это исключение. –

+0

Oh .. Ok .. Получил это ... Получают ошибку в строке 'var client = new PowerBIClient (credentials)' ?? Можете ли вы предоставить немного больше информации об этом? –

ответ

1

Проблема с System.Net .Http.dll, я нашел, что это старая версия 2.xxx

Обновление до 4.0.0.0, то оно должно быть, как показано ниже в web.config

<dependentAssembly> 
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> 
    <bindingRedirect oldVersion="0.0.0.0-4.1.1.0" newVersion="4.0.0.0" /> 
    </dependentAssembly> 

Тогда я столкнулся еще один вопрос

Compiler Error Message: CS0012: The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. 

для этого добавить

<compilation debug="true" targetFramework="4.6.2"> 
    <assemblies>  
    <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </assemblies> 
</compilation> 
+0

Удал ссылку вообще, чтобы заставить ее работать :) Большое спасибо за ваше замечание , Я бы никогда не смог получить его самостоятельно. –

Смежные вопросы