服务和Services.Client层之间的区别?

时间:2013-12-26 09:30:46

标签: c# asp.net wcf asp.net-mvc-4

我正在研究MVC4现有的应用程序。该应用程序与Web服务有关。

申请中有4个项目:

  1. DataLayer - 包含edmx文件
  2. 网络 - 包含:

    模型,视图和控制器

    服务引用命名ProfileService和EditorService

  3. 服务 - 包含:

    数据模型(使用数据库发送/接收数据)

    IProfileService和IEditorService

    ProfileService.svc和EditorService.svc

  4. Services.Client - 包含ProfileService.cs和EditorService.cs


  5. 我的问题:

    1. 有人可以帮我理解这些之间的关系 项目
    2. 在Service.Client中,ProfileService.cs和EditorService.cs是 自动生成的文件。我可以知道如何创建这些类文件吗?
    3. Services和Services.Client有什么区别?
    4. 以下是ProfileService.cs文件的上传(自动生成)

      enter image description here

1 个答案:

答案 0 :(得分:1)

  1. 关系(如在典型架构中):Web访问服务,服务访问DataLayer。 Services.Client可能是想要直接访问服务的项目的库 - 因此Web应用程序也可以使用它。
  2. 通常,在向项目添加服务引用时会创建这些文件。您也可以使用svcutil.exe生成它们。如果项目中没有服务引用,则使用后一种方法的概率很高。
  3. 服务安装在服务器上并向客户端提供服务。 Service.Client提供访问服务的基础结构。这些由客户端用于服务器。请注意,在这种情况下,术语“客户端”是指访问服务的任何软件,并不意味着它必须在客户端计算机上运行。托管在服务器上的Web应用程序也是服务的客户端。