`

WCF 服务IIS部署 SvcUtil.exe 工具文件地址 及 生成代理类命令

    博客分类:
  • WCF
WCF 
阅读更多

开发工具:

Microsoft Visual Studio 2010

1.创建自己的WCF 服务引用程序,如图1

2.自定义服务方法和方法实现

 

Web.config 文件手动参数配置:

复制代码
<?
xml version="1.0" encoding="utf-8"
?>

<
configuration
>

    <
system.web
>

        <
compilation 
debug
="true"
 targetFramework
="4.0"
 />

    </
system.web
>

    <
system.serviceModel
>

        <
services
>

            <
service 
name
="SearchWCFService.CNPatentSearchService"
 behaviorConfiguration
="CalculatorServiceBehavior"
>

                <
endpoint 
address
=""
 binding
="wsHttpBinding"
 contract
="SearchWCFService.ICNPatentSearchService"
></
endpoint
>

                <
endpoint 
address
="mex"
 binding
="mexHttpBinding"
 contract
="IMetadataExchange"
 />

            </
service
>

        </
services
>

        <
behaviors
>

            <
serviceBehaviors
>

                <
behavior 
name
="CalculatorServiceBehavior"
>

                    <!--
 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 
-->

                    <
serviceMetadata 
httpGetEnabled
="true"
/>

                    <!--
 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 
-->

                    <
serviceDebug 
includeExceptionDetailInFaults
="false"
/>

                </
behavior
>

            </
serviceBehaviors
>

        </
behaviors
>

    </
system.serviceModel
>

    <
system.webServer
>

        <
modules 
runAllManagedModulesForAllRequests
="true"
/>

    </
system.webServer
>


</
configuration
>
复制代码

 

说明:
   由于我们是部署到IIS,所以在配置文件中不需要指定WCF 服务的根节点信息

 

3.生成项目,将web.config 文件、*.svc文件、以及bin 目录部署应用程序到IIS

 

4.访问部署的项目,以查看其是否部署成功,如下图所示出现代理类生成说明和调用示例则说明部署成功。

 

5.WCF服务的调用

  5.1 通过项目中 “添加服务引用...”的方式进行调用

    1.如图,选中项目的引用,右键选择“添加服务引用...”

           

         2.输入WCF 在IIS中部署后的http 地址,点击"前往(G)"按钮,即可发现并引用服务

           

 

      5.2 通过Svcutil.exe 工具生成代理类调用

            1.找到如下地址“C:\Windows\System32\cmd.exe”  命令行工具,右键以管理员身份运行(视系统是否为win7 而定) 

            2.输入如下命令:"C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe" /out:C:\WCFClint\ClientCode.cs /config:C:\WCFClint\app.config http://localhost:81/WCFServiceTest/CNPatentSearchService.svc

              说明:

              参数1:  “C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe”   ,是指 SvcUtil.exe 工具的地址

              参数2:  “C:\WCFClint\ClientCode.cs ”   ,是指生成的代理类输出存放到的地址

              参数3:  “C:\WCFClint\app.config ”   ,是指存放到调用WCF服务程序目录下的配置文件的输出存放地址

              参数4:  “http://localhost:81/WCFServiceTest/CNPatentSearchService.svc ”   ,是指部署到IIS 的WCF服务的地址

              

            3.运行以上命令后,会在"C:\WCFClint\"目录下生成两个文件,ClientCode.cs  和app.config

          (C:\WCFClint\app.config 中已经为我们配置好了WCF服务的根节点等必须的信息,当然,如果您也可以自己对部分参数进行修改)

            4.将ClientCode.cs  和app.config 添加到需要调用WCF服务的项目中

            5.在需要调用WCF服务的项目中添加对"System.ServiceModel" 和"System.Runtime.Serialization" 程序集的引用

            6.自此就完成了部署和代理类生成的所有操作,我们只需要在项目中实例化 ClientCode.cs 中的服务类 ,并调用其中的方法即可

            

 

分享到:
评论

相关推荐

    WCF客户端代理类生成工具SvcUtil.exe下载及使用说明

    参数1: “C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe” ,是指 SvcUtil.exe 工具的地址 参数2: “C:\WCFClint\ClientCode.cs ” ,是指生成的代理类输出存放到的地址 参数3: “C:\...

    WCF客户端代理生成工具SvcUtil7.0.exe

    WCF中可以使用SVCUtil.exe生成客户端代理类和配置文件 1.找到如下地址“C:\Windows\System32\cmd.exe” 命令行工具,右键以管理员身份运行(视系统是否为win7 而定) 2.输入如下命令: C:\&gt;cd C:\Program Files\...

    svcutil.rar

    WCF中可以使用SVCUtil.exe生成客户端代理类和配置文件 1.找到如下地址“C:\Windows\System32\cmd.exe” 命令行工具,右键以管理员身份运行(视系统是否为win7 而定) 2.输入如下命令: C:\&gt;cd C:\Program ...

    wcf实用工具及学习教程

    `SvcUtil.exe` 是一个非常重要的WCF工具,用于生成客户端代理类和服务元数据。通过这个工具,你可以: 1. **生成客户端代码**:输入服务的URL,svcutil会生成对应的客户端代理类,使得客户端可以轻松调用服务。 2. ...

    WCF4高级编程Professional.WCF.4

    12. **服务代理生成**:理解如何使用svcutil工具生成客户端代理类,以及如何在项目中引用和使用这些代理。 13. **服务测试和诊断**:学习使用WCF测试客户端、服务元数据和诊断工具,如跟踪和消息日志,进行问题排查...

    Rab.WcfSample.rar_wcfiis_wcfiis示例下载

    - **服务代理生成**:客户端调用WCF服务前,通常需要通过svcutil工具生成服务代理类,这个类包含了调用服务方法所需的接口和代理代码。 - **实例化和调用**:客户端创建服务代理实例,然后通过代理对象的方法调用...

    WCF实现文件上传

    这可以通过`svcutil.exe`工具生成,或在代码中手动创建。客户端使用代理类的`UploadFile`方法发送文件数据。 ```csharp var client = new FileUploadServiceClient(); using (var fileStream = File.OpenRead("C:\\...

    WCF寄主控制台应用程序,有服务器和客户端

    - 客户端使用`ChannelFactory`或`svcutil.exe`工具生成代理类,这个类实现了服务合同,使得客户端可以调用服务操作。 - `ChannelFactory`允许动态创建通道,而svcutil.exe工具则会生成预先编译的客户端代码,便于...

    WCF简单的应用

    WCF提供了`svcutil.exe`工具生成客户端代理类,这些类封装了与服务交互的所有细节。客户端只需实例化代理类,然后调用相应的方法即可。此外,客户端也需要相应的配置信息来定位服务,这通常来自服务端的元数据(通过...

    创建一个简单的WCF程序:WcfServices、WcfServices2

    要创建WCF服务的客户端,我们需要从服务的配置文件中获取元数据(通过`svcutil.exe`工具),生成相应的代理类,然后在客户端代码中实例化这个代理并调用服务方法。 7. **安全性**: WCF提供了多种安全机制,包括...

    WCF服务编程+源代码

    `svcutil.exe`工具可用于生成客户端代码,或者你可以手动添加服务引用。 8. **安全性**:WCF提供了多种安全模型,如传输安全(Transport Security)、消息安全(Message Security)等。源代码可能包含了安全配置...

    Wcf服务的建立测试源码

    这可以通过添加服务引用或使用`svcutil.exe`工具完成。代理类提供了与服务进行交互的方法。 6. **调用服务**:在客户端代码中,实例化代理类并调用其方法即可与服务通信。这通常涉及到创建一个通道工厂,通过工厂...

    WCF服务器与客户端.rar

    6. **客户端代理**:WCF客户端通过代理类与服务进行通信,这个代理由 `svcutil.exe` 工具生成,它包含了服务契约的实现以及与服务通信所需的配置信息。 7. **安全**:WCF提供了多种安全机制,包括传输安全(如HTTPS...

    Silverlight启用安全连接与WCF交互

    Silverlight通过使用WCF客户端代理类与服务进行通信,这些代理类是由`svcutil.exe`工具自动生成的。 ### 启用Transport安全的同域WCF服务 Transport安全是WCF安全模型的一种,它主要关注数据在传输过程中的安全性...

    WCF服务演示程序(IIS宿主)

    客户端可以使用WCF客户端代理(通过`svcutil.exe`生成)或者使用`ChannelFactory`动态创建通道来调用服务。调用服务通常涉及以下步骤: 1. 创建服务代理或通道。 2. 调用服务方法。 3. 关闭服务代理或通道。 ### ...

    WCF建立在IIS服务上实现加,减,乘,除,小程序

    这通常通过使用`svcutil.exe`工具或者Visual Studio的“添加服务引用”功能完成。之后,客户端代码就可以通过代理类调用服务的各个方法进行计算。 **数学运算的实现**在WCF服务中可能非常简单,例如: ```csharp ...

    WCF网站部署说明V1.0

    - **元数据发布**:公开服务元数据,以便其他应用能自动生成客户端代理类。 ### 4. 注意事项 - 确保所有依赖项已正确部署,包括DLL文件和数据库连接字符串。 - 配置文件中的地址应与实际部署环境相符。 - 适当处理...

    WCF高级编程源代码.rar

    这些代理是通过添加服务引用或使用svcutil工具生成的,它们实现了服务接口并处理与服务的交互。 3. **配置文件**:XML配置文件(如app.config或web.config)用于配置服务和客户端的行为,如绑定、终结点、行为和...

    WCF服务编程 源代码

    通过`svcutil.exe`工具或者在Visual Studio中添加服务引用生成。 **开发流程** 1. **设计服务**: 定义服务合同和数据契约。 2. **实现服务**: 创建服务实现类并完成业务逻辑。 3. **配置服务**: 配置服务的终结点...

    WCF基础源码示例

    - `System.ServiceModel.Description.ServiceMetadataBehavior`:这个行为允许服务暴露元数据,便于使用`svcutil.exe`工具生成客户端代理类。 - `System.ServiceModel.WsHttpBinding`:预定义的安全、可靠性和事务性...

Global site tag (gtag.js) - Google Analytics