지금까지 WCF 웹 서비스에서 wsdl 파일을 출력하는 데 어려움을 겪고 있습니다. 비어 있습니다.빈/빈 WSDL 파일
에 SVC 파일 :
<%@ ServiceHost Language="C#" Debug="true" Service="xxx.WCF.SubsetMID" CodeBehind="SubsetMID.svc.cs"
Factory="System.ServiceModel.Activation.WebServiceHostFactory"
%>
연사 파일 :
namespace xxx.WCF
{
[ServiceContract(Namespace = "SubsetMID")]
public interface ISubsetMID
{
[OperationContract]
[WebInvoke(BodyStyle=WebMessageBodyStyle.Wrapped)]
long[] GetMIDs(Guid guid, int subsetID);
}
[DataContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class SubsetMID : ISubsetMID
{
public long[] GetMIDs(Guid guid, int subsetID)
{
[...]
return returnValue;
}
}
}
내 웹 설정 파일 : 나는 WSD에 액세스 할 때 내가 어떤 오류가 발생하지 않는
<system.serviceModel>
<services>
<service name="xxx.WCF.SubsetMID">
<endpoint address=""
binding="wsHttpBinding"
contract="xxx.WCF.ISubsetMID" />
<endpoint address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment
multipleSiteBindingsEnabled="true"
aspNetCompatibilityEnabled="true"
/>
</system.serviceModel>
(http://.../SubsetMID.svc?wsdl
)하지만 빈 페이지 일뿐입니다.
나는 내 서비스를 REST로 정했다. 내가 원하는 것은 그것을 게시하는 방법이며 새로운 프로젝트에서 그것을 참조하는 쉬운 방법이 있습니다. Halas, 인터넷에서 읽을 수있는 것은 자체 호스팅 WCF 서비스에 관한 것입니다. Google은 "svc"를 "wcf"로 번역하여 검색을 정말 어렵게 만듭니다. : – Serge
그런 다음 .svc 파일 마크 업을'ServiceHostFactory'를 사용하도록 변경하고 서비스 메소드의'[WebInvoke]'속성을 제거하면 트릭을 수행해야합니다. – Tim