问题包括对.NET网站的服务引用

时间:2016-04-14 15:56:41

标签: c# visual-studio wcfserviceclient

我有一个由我创建的Web服务,我成功地将其包含在.NET控制台项目中,而不可能包含到网站项目中。 每次我添加一个Web引用时,我的助手都没有在本地找到该服务,但如果我引入了Web URL,它就在那里。 此外,自动生成的类在控制台应用程序中与在网站应用程序中生成的类完全不同。

Web服务是一个WFC服务,它有回调函数,所以我需要一些像IServiceLectorTarjetasSharpCallback这样的界面,当我添加对我的网站的引用时,我找不到它。

我正在使用VS 2015。

1 个答案:

答案 0 :(得分:0)

我会尽可能避免代码生成。如果你愿意,试试这个:

  1. 创建合同装配以定义服务接口和合同:
  2. [ServiceContract] public interface IService { [OperationContract] CustomResponse Test(string test); } public class CustomResponse { }

    1. 导入合同dll并在服务项目中正常实施服务:
    2. public class ServiceImplementation : IService { public CustomResponse Test(string test) { return new CustomResponse(); } }

      1. 在客户端程序集引用合同中实现客户端:
      2. public interface IServiceClient { CustomResponse Test(string test); } public class ServiceClient : ClientBase< IService>, IServiceClient { public CustomResponse Test(string test) { return Channel.Test(test); } }

        1. 消费客户:
        2. IServiceClient client = new ServiceClient(); //or some DI var result = client.Test("Test");