Добавление файла с поддержкой wcf ajax к веб-формам в asp приводит к ошибке проверки - PullRequest
0 голосов
/ 11 февраля 2020

Я пытаюсь создать проект, который использует wcf (ajax включен) в качестве коммуникационной среды с проектом ASP. Net.

Когда я добавляю новый файл wcf в свой проект ошибка появляется в моем файле конфигурации. Я сохранил свой проект как демо-версию, и мой сервисный файл называется Employeeservice.sv c.

Подробнее о моем файле конфигурации читайте. Ошибка возникает вокруг тега, и сообщение об ошибке сообщает:

Атрибут name недействителен. Значение demoservice employee недопустимо в соответствии с его типом данных servicenametype - ограничение перечисления не выполнено.

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  https://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.6.1"/>
    <httpRuntime targetFramework="4.6.1"/>
    <pages>
      <namespaces>
        <add namespace="System.Web.Optimization"/>
      </namespaces>
      <controls>
        <add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt"/>
      </controls>
    </pages>
  </system.web>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
      <dependentAssembly>
        <assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f"/>
        <bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
        <bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
      </dependentAssembly>      
    </assemblyBinding>
  </runtime>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
  </system.codedom>
  <system.serviceModel>
    <behaviors>
      <endpointBehaviors>
        <behavior name="Demo.EmployeeServiceAspNetAjaxBehavior">
          <enableWebScript />
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
      multipleSiteBindingsEnabled="true" />
    <services>
      <service name="Demo.EmployeeService">
        <endpoint address="" behaviorConfiguration="Demo.EmployeeServiceAspNetAjaxBehavior"
          binding="webHttpBinding" contract="Demo.EmployeeService" />
      </service>
    </services>
  </system.serviceModel>
</configuration>

1 Ответ

0 голосов
/ 13 февраля 2020

Это должно быть предупреждение, а не ошибка, это не влияет на сборку проекта. Со своей стороны, моя конфигурация в основном такая же, как и у вас, но это всего лишь предупреждение, и проект может быть построен нормально. Вы создаете проекты с более старыми версиями VS? Если это VS2012, я предлагаю вам удалить файл решения .SUO и пересобрать проект, который должен решить проблему.
Неверный атрибут контракта для IMetadataExchange
Не стесняйтесь, дайте мне знать если проблема все еще существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...