DataContract 类 之一不会通过添加服务引用在客户端生成

One of the DataContract classes doesn't generating on the client side by adding service reference

我在 wcf 服务中有三个 DataContract classes。我已经添加了对客户端的服务引用,我的两个 classes 工作得很好,但第三个没有出现在服务引用中。我在我的服务界面中没有使用这个 class ,这可能是我的问题的原因吗?这是 class:

[DataContract]
public class Security
{
    public Security(){ }

    public string Sha1(string input)
    {
        byte[] hash;
        using (SHA1CryptoServiceProvider Sha1Provider = new SHA1CryptoServiceProvider())
        {
            hash = Sha1Provider.ComputeHash(Encoding.Unicode.GetBytes(input));
        }
        var sb = new StringBuilder();
        foreach (byte b in hash) sb.AppendFormat("{0:x2}", b);
        return sb.ToString();
    }
}

如果它很重要,我已经为我的客户添加了 System.Security.Cryptography 的参考。

如果 DataContract 未在您的 ServiceContract 中公开,则客户端将不会获得 DataContract,因为不需要它。

关于这个问题可以找到更可靠的解释:DataContract not available at WCF client service reference