[英]add a web service reference to a console app
我在控制台应用程序中创建了一个简单的 Web 服务。 (PersonService) 这是我下面的 Program.cs
我正在尝试向不同的控制台应用程序 (PersonClient) 添加服务引用,我该怎么做? 我尝试通过右键单击添加它,添加服务引用,指向引用等...但它不会工作。
[DataContract]
public class Person
{
[DataMember]
public string FirstName { get; set; }
[DataMember]
public string LastName { get; set; }
}
[ServiceContract]
public interface IPersonLookup
{
[OperationContract]
Person GetPerson(int identifier);
}
public class PersonService : IPersonLookup
{
public PersonService()
{
}
public Person GetPerson(int identifier)
{
Person p = new Person();
p.FirstName="Jane";
p.LastName="Doe";
return p;
}
}
class Program
{
static void Main(string[] args)
{
using (ServiceHost host = new ServiceHost(typeof(PersonService)))
{
WSHttpBinding binding = new WSHttpBinding();
host.AddServiceEndpoint(typeof(IPersonLookup), binding, "http://localhost:9090/PersonService");
host.Open();
Console.WriteLine("Listening....");
Console.ReadLine();
}
}
}
解决方案:
还没有人提到在使用“添加服务引用”之前需要做几件事。
快乐编码!
您有两个控制台 exe,一个运行ServiceHost
- 对吗? 在不调试的情况下运行服务器控制台; 然后在 IDE 中添加对 url 的 WCF 引用。 它应该可以工作,但是当您查询 mex 时,它需要运行服务器(您的第二个控制台 exe)。
添加 webservice 引用时,您定义了服务的命名空间和“类名”。 您必须添加命名空间引用(“using FooNameSpace;”)或使用服务的完全限定类名(“FooNameSpace.BarClass ws = new FooNameSapce.BarClass()”);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.