Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WCF公开继承的类_C#_Wcf_.net 4.0 - Fatal编程技术网

C# WCF公开继承的类

C# WCF公开继承的类,c#,wcf,.net-4.0,C#,Wcf,.net 4.0,当我使用这个WCF服务类时,为什么继承的类没有公开 [ServiceContract] public interface IMyService { [OperationContract] void DoSomething(); } [DataContract] public abstract class InheritMe { [DataMember] public int ExposeMe { get; set; } } public class MyService : I

当我使用这个WCF服务类时,为什么继承的类没有公开

[ServiceContract]
public interface IMyService
{
    [OperationContract] void DoSomething();
}

[DataContract]
public abstract class InheritMe
{
    [DataMember] public int ExposeMe { get; set; }
}

public class MyService : InheritMe, IMyService
{
    public void DoSomething() { }
}
我的代码是在Visual Studio 2010 Pro中构建的框架4中的C#


请帮助,提前感谢。

ExposeMe
不属于服务合同的一部分。如果您希望能够在客户端应用程序中调用它,那么您必须在合同界面
IMyService
中定义它

让您的服务类(
MyService
)继承自
DataContract
,这有点奇怪。这是没有用的
DataContact
类是可以与客户端通信的类(例如,通过从服务操作返回它们)。
MyService
类只是您的服务合同的实现-它对客户端不可见。

您所说的不公开到底是什么意思?在客户端应用程序中,ExposeMe DataMember未公开。为什么要将服务类设为数据协定?InheritMe类中有一些方法在我的实际代码中使用ExposeMe属性。谢谢,我会试试你的建议。它很有效,但不幸的是,我记得MySqlCommand.MySqlTransaction是不可序列化的。哈哈。再次感谢。