我可以使用c#rest库调用Web服务吗?

时间:2019-07-11 18:46:10

标签: c# asp.net rest web-services restful-url

我可以使用C#REST库进行这些Web服务调用,而不是像下面的操作那样发现Web服务吗?

我们正在调用的网络服务的一个例子

https://trustonline.delawarecpf.com/tows/webservicefk.svc

问题是,每个Web服务都有一个.cs文件,几乎所有相同的代码用于调用该Web服务并提取/添加/编辑数据。唯一的区别是Web服务每个文件引用都不同。

例如在每个文件中,我们都这样访问用户

var user = new User();

用户所在的地方

ServiceReferenceFK.User() // from the FK service reference

ServiceReferenceAB.User() // from the AB service reference

但是我宁愿使用REST库来获取/编辑/添加/删除数据,以便消除所有冗余文件。并将所有服务移至一个文件。

当前,我们在项目下的解决方案资源管理器中执行此操作

enter image description here

然后,我们在下面添加这样的服务参考,然后点击发现。 VS找到该网址,并为我们获取所有要使用的代码。

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以使用抽象基类。要使其正常工作,您的抽象类必须为[serializable][Datacontract],否则它将无法将该类公开给客户端,例如

[DataContract]
public abstract class MyBase
{
    [DataMember]
    public abstract int DoAdd { get; set; }

    public void MyOtherFunc()
    {
        Console.WriteLine("Done");
    }

}
[DataContract]
public class MyWCF : MyBase
{
    int a;
    [DataMember]
    public override int DoAdd
    {
        get { return a; }
        set { a = value; }
    }
}