I was also getting the same error, the WCF was working properly for me when i was using it in the Dev Environment with my credentials, but when someone else was using it in TEST, it was throwing the same error.
I did a lot of research, and then instead of doing config updates, handled an exception in the WCF method with the help of fault exception.
Also the identity for the WCF needs to be set with the same credentials which are having access in the database, someone might have changed your authority.
Please find below the code for the same:
[ServiceContract]
public interface IService1
{
[OperationContract]
[FaultContract(typeof(ServiceData))]
ForDataset GetCCDBdata();
[OperationContract]
[FaultContract(typeof(ServiceData))]
string GetCCDBdataasXMLstring();
//[OperationContract]
//string GetData(int value);
//[OperationContract]
//CompositeType GetDataUsingDataContract(CompositeType composite);
// TODO: Add your service operations here
}
[DataContract]
public class ServiceData
{
[DataMember]
public bool Result { get; set; }
[DataMember]
public string ErrorMessage { get; set; }
[DataMember]
public string ErrorDetails { get; set; }
}
in your service1.svc.cs you can use this in the catch block:
catch (Exception ex)
{
myServiceData.Result = false;
myServiceData.ErrorMessage = "unforeseen error occured. Please try later.";
myServiceData.ErrorDetails = ex.ToString();
throw new FaultException<ServiceData>(myServiceData, ex.ToString());
}
And use this in the Client application like below code:
ConsoleApplicationWCFClient.CCDB_HIG_service.ForDataset ds = obj.GetCCDBdata();
string str = obj.GetCCDBdataasXMLstring();
}
catch (FaultException<ConsoleApplicationWCFClient.CCDB_HIG_service.ServiceData> Fex)
{
Console.WriteLine("ErrorMessage::" + Fex.Detail.ErrorMessage + Environment.NewLine);
Console.WriteLine("ErrorDetails::" + Environment.NewLine + Fex.Detail.ErrorDetails);
Console.ReadLine();
}
Just try this, it will help for sure to get the exact issue.
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 2.0
»
Не удаётся подключение к консоли управления ЦР
monditorium
#1
Оставлено
:
14 октября 2019 г. 13:16:02(UTC)
![]()
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.08.2019(UTC)
Сообщений: 61
Сказал(а) «Спасибо»: 29 раз
Здравствуйте,
не удаётся войти в Консоль управления ЦР
При входе возникает следующая ошибка
System.ServiceModel.FaultException: Сервер не смог обработать запрос в связи с внутренней ошибкой. Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (с помощью атрибута ServiceBehaviorAttribute или через поведение < serviceDebug >) на сервере для того чтобы выслать информацию об исключении назад клиенту, или включить трассировку согласно инструкции Microsoft .NET Framework SDK и проверить записи журнала трассировки клиента.
Server stack trace:
at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at PkiService.ServiceContracts.ICertViewContract.OpenView(String authority, List`1 colOut, RestrictionCollection colRestrict, Int32 firstIndex, Int32 requestedCount, Int32& totalRowCount)
at PkiService.Client.CertViewContractAdapter.OpenView(String authority, List`1 colOut, RestrictionCollection colRestrict, Int32 firstIndex, Int32 requestedCount, Int32& totalRowCount)
at PkiService.Client.DbModelProvider.Read(ICertViewClient client, String authority, Int32 readBlockSize, List`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, RestrictionCollection restrictions, Int32& count)
at PkiService.Client.DbModelProvider.<>c__DisplayClass6_2.<Read>b__0()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at PkiService.Client.DbModelProvider.Read(String viewName, List`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.InternalRead(IEnumerable`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.InternalRead(Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.Reload(Int32 index)
at PkiService.ServiceContracts.RowListModel.Refresh()
at PkiService.ServiceContracts.RowListModel.Refresh(RestrictionCollection restrictions)
at CryptoPro.CommonControls.ListServerDecorator.DevExpress.Data.IListServer.Apply(CriteriaOperator filterCriteria, ICollection`1 sortInfo, Int32 groupCount, ICollection`1 groupSummaryInfo, ICollection`1 totalSummaryInfo)
at DevExpress.Data.ServerModeDataController.DoSortRows()
at DevExpress.Data.DataController.OnRefresh(Boolean useRowsKeeper)
at DevExpress.Data.DataController.DoRefreshCore(Boolean useRowsKeeper)
at DevExpress.Data.DataController.DoRefresh(Boolean useRowsKeeper)
at DevExpress.XtraGrid.Views.Base.ColumnView.RefreshData()
at CryptoPro.CommonControls.GridViewExt.Refresh(GridView gridView)
at RegistrationService.RemoteConsole.GridView2ControlListViewAdapter.RefreshData()
at RegistrationService.RemoteConsole.GridView2ControlListViewAdapter.Initialize(IRowListView view)
at RegistrationService.RemoteConsole.RowListView.ListViewBindingRegistry.ListRowViewBinding.Initialize()
at RegistrationService.RemoteConsole.RowListView.ListViewBindingRegistry.ListRowViewBinding.Refresh()
at RegistrationService.RemoteConsole.RowListPresenter.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.SwitchDispatcher.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.ConnectionListPresenter.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.ConnectionListPresenter.Connect(RegAuthConnection c)
at RegistrationService.RemoteConsole.ConnectionListPresenter.ConnectToDefault()
at RegistrationService.RemoteConsole.MainForm.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg)
at DevExpress.XtraBars.Ribbon.RibbonForm.WndProc(Message& msg)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
HResult = -2146233087 (0x80131501)
При этом в Подключении проверка соединения проходит успешно.
С чем может быть связана проблема?


Захар Тихонов
#2
Оставлено
:
14 октября 2019 г. 14:02:51(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,086

Откуда: Калининград
Сказал «Спасибо»: 38 раз
Поблагодарили: 555 раз в 532 постах
Здравствуйте.
Используете прокси?

itservice
#3
Оставлено
:
13 ноября 2019 г. 11:48:03(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
Здравствуйте.
Та же беда — внезапно не подключается к ЦР.
RemoteConsole.svclog (25kb) загружен 3 раз(а).
На ЦР нет ошибок в журнале типа *.dll, сертификаты целы. CSP переставляли.
Прокси в конторе используется.
Подскажите, куда копать?

Захар Тихонов
#4
Оставлено
:
13 ноября 2019 г. 12:33:05(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,086

Откуда: Калининград
Сказал «Спасибо»: 38 раз
Поблагодарили: 555 раз в 532 постах
Здравствуйте.
БД локально расположена на ЦР или на выделенном сервере?

itservice
#5
Оставлено
:
13 ноября 2019 г. 12:50:08(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
БД локально расположена на ЦР.

Захар Тихонов
#6
Оставлено
:
13 ноября 2019 г. 12:53:18(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,086

Откуда: Калининград
Сказал «Спасибо»: 38 раз
Поблагодарили: 555 раз в 532 постах
Автор: itservice ![]()
БД локально расположена на ЦР.
На ЦР в Диспетчере УЦ нет ошибки?
На ЦР настройте согласно скриншоту:
1.png (63kb) загружен 33 раз(а).

itservice
#7
Оставлено
:
13 ноября 2019 г. 14:35:49(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
Ошибок нет. Настроил, как на скриншоте. Не помогло. Что-то с БД, похоже, что не может достучаться до неё. Но пока не ясно, как поправить.

Захар Тихонов
#8
Оставлено
:
13 ноября 2019 г. 14:38:04(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,086

Откуда: Калининград
Сказал «Спасибо»: 38 раз
Поблагодарили: 555 раз в 532 постах

itservice
#9
Оставлено
:
13 ноября 2019 г. 14:59:24(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
с ЦР Ping-CA проходит на ок.

Захар Тихонов
#10
Оставлено
:
13 ноября 2019 г. 15:38:14(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,086

Откуда: Калининград
Сказал «Спасибо»: 38 раз
Поблагодарили: 555 раз в 532 постах
А сертификат администратору ЦР можете выпустить через Диспетчер УЦ на ЦР?

Guest
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 2.0
»
Не удаётся подключение к консоли управления ЦР
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 2.0
»
Не удаётся подключение к консоли управления ЦР
![]()
monditorium
#1
Оставлено
:
14 октября 2019 г. 13:16:02(UTC)
![]()
Статус: Активный участник
Группы: Участники
Зарегистрирован: 22.08.2019(UTC)
Сообщений: 61
Сказал(а) «Спасибо»: 29 раз
Здравствуйте,
не удаётся войти в Консоль управления ЦР
При входе возникает следующая ошибка
System.ServiceModel.FaultException: Сервер не смог обработать запрос в связи с внутренней ошибкой. Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (с помощью атрибута ServiceBehaviorAttribute или через поведение < serviceDebug >) на сервере для того чтобы выслать информацию об исключении назад клиенту, или включить трассировку согласно инструкции Microsoft .NET Framework SDK и проверить записи журнала трассировки клиента.
Server stack trace:
at System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at PkiService.ServiceContracts.ICertViewContract.OpenView(String authority, List`1 colOut, RestrictionCollection colRestrict, Int32 firstIndex, Int32 requestedCount, Int32& totalRowCount)
at PkiService.Client.CertViewContractAdapter.OpenView(String authority, List`1 colOut, RestrictionCollection colRestrict, Int32 firstIndex, Int32 requestedCount, Int32& totalRowCount)
at PkiService.Client.DbModelProvider.Read(ICertViewClient client, String authority, Int32 readBlockSize, List`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, RestrictionCollection restrictions, Int32& count)
at PkiService.Client.DbModelProvider.<>c__DisplayClass6_2.<Read>b__0()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at PkiService.Client.DbModelProvider.Read(String viewName, List`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.InternalRead(IEnumerable`1 outColumnIndexes, Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.InternalRead(Int32 firstRowIndex, Int32 requestedCount, IEnumerable`1 restrictions, Boolean fetchTotalRowCount, Int32& count)
at PkiService.ServiceContracts.RowListModel.Reload(Int32 index)
at PkiService.ServiceContracts.RowListModel.Refresh()
at PkiService.ServiceContracts.RowListModel.Refresh(RestrictionCollection restrictions)
at CryptoPro.CommonControls.ListServerDecorator.DevExpress.Data.IListServer.Apply(CriteriaOperator filterCriteria, ICollection`1 sortInfo, Int32 groupCount, ICollection`1 groupSummaryInfo, ICollection`1 totalSummaryInfo)
at DevExpress.Data.ServerModeDataController.DoSortRows()
at DevExpress.Data.DataController.OnRefresh(Boolean useRowsKeeper)
at DevExpress.Data.DataController.DoRefreshCore(Boolean useRowsKeeper)
at DevExpress.Data.DataController.DoRefresh(Boolean useRowsKeeper)
at DevExpress.XtraGrid.Views.Base.ColumnView.RefreshData()
at CryptoPro.CommonControls.GridViewExt.Refresh(GridView gridView)
at RegistrationService.RemoteConsole.GridView2ControlListViewAdapter.RefreshData()
at RegistrationService.RemoteConsole.GridView2ControlListViewAdapter.Initialize(IRowListView view)
at RegistrationService.RemoteConsole.RowListView.ListViewBindingRegistry.ListRowViewBinding.Initialize()
at RegistrationService.RemoteConsole.RowListView.ListViewBindingRegistry.ListRowViewBinding.Refresh()
at RegistrationService.RemoteConsole.RowListPresenter.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.SwitchDispatcher.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.ConnectionListPresenter.SwitchConnection(RegAuthConnection connection)
at RegistrationService.RemoteConsole.ConnectionListPresenter.Connect(RegAuthConnection c)
at RegistrationService.RemoteConsole.ConnectionListPresenter.ConnectToDefault()
at RegistrationService.RemoteConsole.MainForm.OnLoad(EventArgs e)
at System.Windows.Forms.Form.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.WmShowWindow(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.Form.WmShowWindow(Message& m)
at System.Windows.Forms.Form.WndProc(Message& m)
at DevExpress.XtraEditors.XtraForm.WndProc(Message& msg)
at DevExpress.XtraBars.Ribbon.RibbonForm.WndProc(Message& msg)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
HResult = -2146233087 (0x80131501)
При этом в Подключении проверка соединения проходит успешно.
С чем может быть связана проблема?


![]()
Захар Тихонов
#2
Оставлено
:
14 октября 2019 г. 14:02:51(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,062

Откуда: Калининград
Сказал «Спасибо»: 35 раз
Поблагодарили: 548 раз в 525 постах
Здравствуйте.
Используете прокси?

![]()
itservice
#3
Оставлено
:
13 ноября 2019 г. 11:48:03(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
Здравствуйте.
Та же беда — внезапно не подключается к ЦР.
RemoteConsole.svclog (25kb) загружен 3 раз(а).
На ЦР нет ошибок в журнале типа *.dll, сертификаты целы. CSP переставляли.
Прокси в конторе используется.
Подскажите, куда копать?

![]()
Захар Тихонов
#4
Оставлено
:
13 ноября 2019 г. 12:33:05(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,062

Откуда: Калининград
Сказал «Спасибо»: 35 раз
Поблагодарили: 548 раз в 525 постах
Здравствуйте.
БД локально расположена на ЦР или на выделенном сервере?

![]()
itservice
#5
Оставлено
:
13 ноября 2019 г. 12:50:08(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
БД локально расположена на ЦР.

![]()
Захар Тихонов
#6
Оставлено
:
13 ноября 2019 г. 12:53:18(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,062

Откуда: Калининград
Сказал «Спасибо»: 35 раз
Поблагодарили: 548 раз в 525 постах
Автор: itservice ![]()
БД локально расположена на ЦР.
На ЦР в Диспетчере УЦ нет ошибки?
На ЦР настройте согласно скриншоту:
1.png (63kb) загружен 26 раз(а).

![]()
itservice
#7
Оставлено
:
13 ноября 2019 г. 14:35:49(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
Ошибок нет. Настроил, как на скриншоте. Не помогло. Что-то с БД, похоже, что не может достучаться до неё. Но пока не ясно, как поправить.

![]()
Захар Тихонов
#8
Оставлено
:
13 ноября 2019 г. 14:38:04(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,062

Откуда: Калининград
Сказал «Спасибо»: 35 раз
Поблагодарили: 548 раз в 525 постах

![]()
itservice
#9
Оставлено
:
13 ноября 2019 г. 14:59:24(UTC)
![]()
Статус: Участник
Группы: Участники
Зарегистрирован: 13.11.2019(UTC)
Сообщений: 13
Откуда: Москва
Поблагодарили: 1 раз в 1 постах
с ЦР Ping-CA проходит на ок.

![]()
Захар Тихонов
#10
Оставлено
:
13 ноября 2019 г. 15:38:14(UTC)

Статус: Сотрудник
Группы: Участники
Зарегистрирован: 17.08.2015(UTC)
Сообщений: 3,062

Откуда: Калининград
Сказал «Спасибо»: 35 раз
Поблагодарили: 548 раз в 525 постах
А сертификат администратору ЦР можете выпустить через Диспетчер УЦ на ЦР?

Пользователи, просматривающие эту тему
Guest
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 2.0
»
Не удаётся подключение к консоли управления ЦР
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
I was also getting the same error, the WCF was working properly for me when i was using it in the Dev Environment with my credentials, but when someone else was using it in TEST, it was throwing the same error.
I did a lot of research, and then instead of doing config updates, handled an exception in the WCF method with the help of fault exception.
Also the identity for the WCF needs to be set with the same credentials which are having access in the database, someone might have changed your authority.
Please find below the code for the same:
[ServiceContract]
public interface IService1
{
[OperationContract]
[FaultContract(typeof(ServiceData))]
ForDataset GetCCDBdata();
[OperationContract]
[FaultContract(typeof(ServiceData))]
string GetCCDBdataasXMLstring();
//[OperationContract]
//string GetData(int value);
//[OperationContract]
//CompositeType GetDataUsingDataContract(CompositeType composite);
// TODO: Add your service operations here
}
[DataContract]
public class ServiceData
{
[DataMember]
public bool Result { get; set; }
[DataMember]
public string ErrorMessage { get; set; }
[DataMember]
public string ErrorDetails { get; set; }
}
in your service1.svc.cs you can use this in the catch block:
catch (Exception ex)
{
myServiceData.Result = false;
myServiceData.ErrorMessage = "unforeseen error occured. Please try later.";
myServiceData.ErrorDetails = ex.ToString();
throw new FaultException<ServiceData>(myServiceData, ex.ToString());
}
And use this in the Client application like below code:
ConsoleApplicationWCFClient.CCDB_HIG_service.ForDataset ds = obj.GetCCDBdata();
string str = obj.GetCCDBdataasXMLstring();
}
catch (FaultException<ConsoleApplicationWCFClient.CCDB_HIG_service.ServiceData> Fex)
{
Console.WriteLine("ErrorMessage::" + Fex.Detail.ErrorMessage + Environment.NewLine);
Console.WriteLine("ErrorDetails::" + Environment.NewLine + Fex.Detail.ErrorDetails);
Console.ReadLine();
}
Just try this, it will help for sure to get the exact issue.
I was also getting the same error, the WCF was working properly for me when i was using it in the Dev Environment with my credentials, but when someone else was using it in TEST, it was throwing the same error.
I did a lot of research, and then instead of doing config updates, handled an exception in the WCF method with the help of fault exception.
Also the identity for the WCF needs to be set with the same credentials which are having access in the database, someone might have changed your authority.
Please find below the code for the same:
[ServiceContract]
public interface IService1
{
[OperationContract]
[FaultContract(typeof(ServiceData))]
ForDataset GetCCDBdata();
[OperationContract]
[FaultContract(typeof(ServiceData))]
string GetCCDBdataasXMLstring();
//[OperationContract]
//string GetData(int value);
//[OperationContract]
//CompositeType GetDataUsingDataContract(CompositeType composite);
// TODO: Add your service operations here
}
[DataContract]
public class ServiceData
{
[DataMember]
public bool Result { get; set; }
[DataMember]
public string ErrorMessage { get; set; }
[DataMember]
public string ErrorDetails { get; set; }
}
in your service1.svc.cs you can use this in the catch block:
catch (Exception ex)
{
myServiceData.Result = false;
myServiceData.ErrorMessage = "unforeseen error occured. Please try later.";
myServiceData.ErrorDetails = ex.ToString();
throw new FaultException<ServiceData>(myServiceData, ex.ToString());
}
And use this in the Client application like below code:
ConsoleApplicationWCFClient.CCDB_HIG_service.ForDataset ds = obj.GetCCDBdata();
string str = obj.GetCCDBdataasXMLstring();
}
catch (FaultException<ConsoleApplicationWCFClient.CCDB_HIG_service.ServiceData> Fex)
{
Console.WriteLine("ErrorMessage::" + Fex.Detail.ErrorMessage + Environment.NewLine);
Console.WriteLine("ErrorDetails::" + Environment.NewLine + Fex.Detail.ErrorDetails);
Console.ReadLine();
}
Just try this, it will help for sure to get the exact issue.
Участник
Регистрация: 30.03.2012
Адрес: Новосибирск
в WebService ошибка IncludeExceptionDetailInFaults
Всем привет!
На серваке где стоит CRM 2011 поднял простенький сервис
Код:
public class Account : System.Web.Services.WebService
{
public IOrganizationService GetOrganization()
{
Uri organizationUri = new Uri("http://server/test/xrmservices/2011/Organization.svc");
var cred = new ClientCredentials();
OrganizationServiceProxy _serviceproxy = new
OrganizationServiceProxy(organizationUri, null, cred, null);
IOrganizationService _service = (IOrganizationService)_serviceproxy;
return _service;
}
[WebMethod(true)]
[ScriptMethod]
public string CountOfAccount(string name)
{
IOrganizationService service = GetOrganization();
var e = service.Retrieve("account", new Guid("117A260F-36A3-E111-9835-00155D016705"), new ColumnSet(true));
return e.Attributes.Count.ToString();
}
}
вылетает ошибка
Код:
System.ServiceModel.FaultException: Серверу не удалось обработать запрос из-за внутренней ошибки. Для получения дополнительной информации об ошибке включите IncludeExceptionDetailInFaults (или с помощью атрибута ServiceBehaviorAttribute, или из конфигурации поведения <serviceDebug>) на сервере с целью отправки информации об исключении клиенту, либо включите трассировку, согласно документации Microsoft .NET Framework 3.0 SDK, и изучите журналы трассировки сервера. Server stack trace: в System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter) в System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc) в System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) в System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) в Microsoft.Xrm.Sdk.IOrganizationService.Retrieve(String entityName, Guid id, ColumnSet columnSet) в Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy.RetrieveCore(String entityName, Guid id, ColumnSet columnSet) в Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy.Retrieve(String entityName, Guid id, ColumnSet columnSet) в ALV.WebServices.WebServices.Account.CountOfAccount(String name) в D:ProjectsALVALV.WebServicesWebServicesAccount.asmx.cs:строка 46
а локально все работает нормально
Мне кажется чтото с Credentials… у когонить была проблема? как мне настроить сервис, чтобы я его мог вызывать через javascript
точнее мне надо первое) через js я его вызываю и он нормально вызывается, но выдает ошибку выше….
Последний раз редактировалось kh_heckfy; 22.05.2012 в 11:22.
У меня есть веб-сервис WCF, который дает мне следующее сообщение всякий раз, когда я пытаюсь его использовать:
Сервер не смог обработать запрос из-за внутренней ошибки. Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (либо из ServiceBehaviorAttribute, либо из поведения конфигурации ‹serviceDebug›) на сервере, чтобы отправить информацию об исключении обратно клиенту, или включите трассировку в соответствии с Microsoft .NET Framework. документации SDK и просмотрите журналы трассировки сервера.
У меня простой вопрос: как я могу включить IncludeExceptionDetailInFaults? Я знаю, что об этом спрашивали миллион раз в Интернете, но что бы я ни делал, я просто не могу заставить его работать. Пожалуйста, сохраните себя, вставив это включите IncludeExceptionDetailInFaults (либо из ServiceBehaviorAttribute, либо из ‹serviceDebug› поведение конфигурации) на сервере
Я читал это бесчисленное количество раз и пробовал все, но все еще ничего. Я меняю includeExceptionDetailInFaults на true и false и не вижу разницы. Ничего не происходит, значит, я что-то упускаю. Или я не там ищу? Где мне их искать?
Во всяком случае, вот мой Web.config (его часть). Если вам нужен полный файл конфигурации, я могу опубликовать его, но мне нужно изменить в нем все имена и т. Д.
<services>
<service name="FOO.BAR.Services.CRMServices.Service1">
<endpoint address="" behaviorConfiguration="jsonBehavior" binding="webHttpBinding" bindingConfiguration="Service1Binding" contract="FOO.BAR.Services.CRMServices.IService1" />
</service>
<service name="FOO.BAR.Services.CRMServices.Service2" behaviorConfiguration="debug">
<endpoint address="" behaviorConfiguration="jsonBehavior" binding="webHttpBinding" bindingConfiguration="Service2Binding" name="FOO.BAR.Services.CRMServices.Service2" contract="FOO.BAR.Services.CRMServices.IService2" />
</service>
</services>
<behaviors>
<endpointBehaviors>
<behavior name="jsonBehavior">
<webHttp />
</behavior>
</endpointBehaviors>
<serviceBehaviors>
<behavior name="debug">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
Поэтому я пытаюсь использовать Service2. Надеюсь, вы, ребята, сможете определить, что с этим не так? Единственное, что я вижу, отличается от другого вопроса, который я связал, это то, что у меня есть две службы. Также в файле конфигурации уже было свойство httpGetEnabled, но его удаление также не имело значения.
Служба WCF, которую я пытаюсь запустить, создана другим парнем. Я только что получил решение Visual Studio, настроил IIS и разместил там эту службу. Я никогда не делал ничего подобного раньше, поэтому я думаю, что это может быть как-то связано с моими конфигурациями.
Помогите пожалуйста устранить ошибку при вызове функции контракта обратного вызова с сервера. Ошибка такая: «Клиент не смог обработать запрос обратного вызова в связи с внутренней ошибкой. Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (с помощью атрибута CallbackBehaviorAttribute или через поведение ) на клиенте для того чтобы выслать информацию об исключении назад серверу, или включить трассировку согласно инструкции Microsoft .NET Framework SDK и проверить записи журнала трассировки клиента.» Кода много и код функции в которой возникает ошибка вам ничего не скажет, поэтому я просто дам ссылку на свой репозиторий: https://github.com/DarkByte2015/lab3.
P.S. Если будете искать по коду — ошибка возникает в классе ClientView в функции Calculate.
- c#
- wcf
задан 3 апр 2016 в 5:31
![]()
DeveloperDeveloper
1,74616 серебряных знаков36 бронзовых знаков
4
-
Добавьте в клиент обработку ошибок с записью в лог или на консоль.
try { ... } catch (Exception ex) { Console.WriteLine(ex); }3 апр 2016 в 6:29
-
Куда конкретно? Там есть обработка ошибок в Main.
3 апр 2016 в 6:36
-
В обработчик обратного вызова, очевидно же.
3 апр 2016 в 13:42
-
Да кажется что то начало проясняться. Выдало вот такую ошибку: ссылка. Кажется у меня взаимоблокировка, я пока еще не научился их лечить.
Reentrant у меня установлен у контракта сервиса, но судя по ошибке это не помогает. Пробовал еще у контракта обратного вызова на стороне клиента поставить, но тоже не помогло. Как быть?3 апр 2016 в 14:20
1 ответ
Как написано в исключении, поставьте задайте правильный CallbackBehavior у реализации контракта обратного вызова.
ответ дан 3 апр 2016 в 14:23
![]()
Pavel MayorovPavel Mayorov
57.7k7 золотых знаков71 серебряный знак144 бронзовых знака
11
-
Вы дочитали мой коммент до конца? Я же написал что у меня стоит Reentrant и так у сервиса и не помогает.
3 апр 2016 в 14:25
-
@DarkByte извиняюсь, поправился.
3 апр 2016 в 14:28
-
Опять не дочитали до конца комент. Я же говорю я и контракта обратного вызова этот атрибут проставил, но не помогло это.
3 апр 2016 в 14:41
-
Нет, теперь вы не дочитали до конца ответ.
3 апр 2016 в 15:04
-
Что я не так сказал? «Пробовал еще у контракта обратного вызова на стороне клиента поставить, но тоже не помогло.» — именно то что вы написали. Естественно у реализации, у интерфейса вообще нельзя проставить CallbackBehavior.
3 апр 2016 в 15:42
