رسالة الخطأ: "عقدين مختلفين لهما نفس التكوين" عند تنزيل WSDL من Xamlx في AppFabric Beta 2

StackOverflow https://stackoverflow.com/questions/2392975

سؤال

أحصل على رسالة الخطأ التالية عندما أحاول استخدامها svcutil لإنشاء وكيل عميل ل xamlx ملف يستضيفه AppFabric Beta 2:

عقدان مختلفان لهما نفس التكوين

أنا أفهم الرسالة ، ومع ذلك ، لا يمكنني العثور على سببها أو كيفية إصلاحها. أنا أتابع مختبر "مقدمة لخدمات سير العمل" من مجموعة VS2010RC للتدريب. يحتوي تطبيق الويب على خدمتان: submitapplication.xamlx و EducationScreening.xamlx. لست متأكدًا من السبب ولكن كلاهما لديه أربع نقاط نهاية. إذا ألقيت نظرة عبر لوحة معلومات AppFabric في IIS MGMT Studio:

basicHttpBinding (Contract: *)
    (Type: Application(Default))
netNamedPipeBinding (Contract: System.ServiceModel.Activities.IWorkflowInstanceManagement)
    (Type: System (workflowControlEndpoint))
netNamedPipeBinding (Contract: *)
    (Type: Application (Default))
serviceMetadataHttpGetBinding (Contract: serviceMetadataHttpGetContract)
    (Type: System (serviceMetadataEndpoint))

عند إلقاء نظرة على submitapplication.xamlx في متصفح ، أرى stacktrace التالي:

[InvalidOperationException: Two different contracts have the same ConfigurationName.]
System.ServiceModel.Activities.WorkflowServiceHost.CreateDescription(IDictionary`2& implementedContracts) +361
System.ServiceModel.ServiceHostBase.InitializeDescription(UriSchemeKeyedCollection baseAddresses) +174
System.ServiceModel.Activities.WorkflowServiceHost.InitializeDescription(WorkflowService serviceDefinition, UriSchemeKeyedCollection baseAddresses) +82
System.ServiceModel.Activities.WorkflowServiceHost.InitializeFromConstructor(WorkflowService serviceDefinition, Uri[] baseAddresses) +206
System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory.CreateWorkflowServiceHost(WorkflowService service, Uri[] baseAddresses) +43
System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses) +974
System.ServiceModel.HostingManager.CreateService(String normalizedVirtualPath) +1423
System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +50
System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +1132

[ServiceActivationException: The service '/HRApplicationServices/SubmitApplication.xamlx' cannot be activated due to an exception during compilation. The exception message is: Two different contracts have the same ConfigurationName..]
System.Runtime.AsyncResult.End(IAsyncResult result) +889824
System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +179150
System.Web.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult ar) +107

هل يمكن لأي شخص أن يخبرني بما أفعله خطأ؟

لم أكن تكوين أي من الروابط بنفسي. إن basichttpbinding هو ما تحصل عليه افتراضيًا في .NET 4 عند استضافة خدمة داخل تطبيق ويب. يتم تكوين الروابط الأخرى بواسطة AppFabric. لا يمكنني العثور على تكوينهم في أي مكان.

تحديث: إزالة واحدة من خدمات XAMLX (EducationScreening.xamlx). بدون تأثير.

أطيب التحيات،
رونالد وايلدنبرغ

هل كانت مفيدة؟

المحلول

قمت ببعض الأبحاث الإضافية ووجدت المشكلة. هناك نوعان من أنشطة ReceivereQuest داخل sustractapplication.xamlx سير العمل. كان لديهم اثنين من serviceContractname's:

{http://contoso.com/hr}IApplicationService
{http://contoso.com/hr/}IApplicationService

ما زلت لا أفهم الرسالة. ما هو تكوين خدمة XAMLX؟ ولماذا يختلف عندما أقوم بتغيير اسم ServiceContractName؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top