WCF分布式开发常见错误解决(8):不一致的访问性Inconsistent accessibility

在设计数据契约类,并使用其做参数实现客户端与服务端数据交互的时候,编辑服务 类,出现以下错误:

Error 1 Inconsistent accessibility: parameter type 'WCFService.UserDataContract' is less accessible than method 'WCFService.IWCFService.AddNewUser(WCFService.UserDataContract)' E:\CodesVs2008\WCFServiceDataContractFrankXuLei\WCFServiceFrankXuLei\WCFService\WCFService.cs 19 14 WCFService

其它类似错误信息:

Error 2 Inconsistent accessibility: return type 'WCFService.UserDataContract' is less accessible than method 'WCFService.IWCFService.GetUserByName(string)' E:\CodesVs2008\WCFServiceDataContractFrankXuLei\WCFServiceFrankXuLei\WCFService\WCFService.cs 22 26 WCFService

解决办法:

此错误是由于数据契约类的访问属性设置与服务契约访问属性不一致所致,服务契约 接口的访问行为public,服务类也是public,而数据契约类没有生命对应的访问属性。

我们把数据契约类添加public关键字即可。示例代码如下:

[DataContract]//数据契约属性声明
     public class UserDataContract
     {
         [DataMember(Name = "UserName")]//数据成员标记,支持别名定 义
         public string Name
         {
             get;
             set;
         }

         [DataMember(Name = "UserEmail")]//数据成员标记,支持别名定 义
         public string Email
         {
             get;
             set;
         }
         [DataMember]//数据成员标记
         public string Mobile
         {
             get;
             set;
         }
         //没有[DataMember]声明,不会被序列化
         public string Address
         {
             get;
             set;
         }
     }

时间: 2024-08-30 00:52:40

WCF分布式开发常见错误解决(8):不一致的访问性Inconsistent accessibility的相关文章

WCF分布式开发常见错误解决(12)

WCF分布式开发常见错误解决(12):The server was unable to process the request,服务无法处理请求 进行WCF编程过程中会遇到这样的错误:服务无法处理的请求由于内部错误. 具体信息如下: The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeEx

WCF分布式开发常见错误解决(11)

WCF分布式开发常见错误解决(11):There is already a listener on IP endpoint ,IP 终结点 已经存在侦听器 进行WCF服务终结点配置的过程中,当你配置服务终结点端口,启动服务程序的时候会遇到如下错误,服务无法启动,1.错误信息如下: IP终结点(端口) 0.0.0.0:8002已经存在一个侦听器,请确保程序中没有多次使用一个终结点,或别的程序没有监听此终结点(端口) There is already a listener on IP endpoin

WCF分布式开发常见错误解决(10)

WCF分布式开发常见错误解决(10):套接字连接中断,The socket connection was aborted (使用Windows Service作为宿主的时候也会出现这样的情况,搜索的) 我们这里是自定义托管宿主,在进行WCF编程开发过程时,使用NetTcpBinding绑定协议,作为通讯协议,可能会引发这样的异常,导致数据如法传输.套接字连接中断,可能是由于消息处理错误,或者远程宿主接受超时引起,或者是底层网络资源问题导致,本地套接字时间是'00:00:59.7656250'.具

WCF分布式开发常见错误解决(9)

WCF分布式开发常见错误解决(9):无终结点监听,There was no endpoint listening at 当我们添加服务元数据地址,查找元数据服务,进行反序列操作.会出现这样的错误:无终结点监听Metadata contains a reference that cannot be resolved: 'net.tcp://localhost:9004/mex'. There was no endpoint listening at net.tcp://localhost:9004

WCF分布式开发常见错误解决(7)

WCF分布式开发常见错误解决(7):System.InvalidOperationException,Cannot have two operations in the same contract 我们启动服务宿主程序的时候,有可能出现如下的无效操作异常,信息如下: Cannot have two operations in the same contract with the same name, methods SayHello and SayHello in type WCFService

WCF分布式开发常见错误解决(6)

WCF分布式开发常见错误解决(6)Service 'WcfServiceApp.WCFService' has zero application 调试WCF服务应用程序的时候,会出现如下错误: "/"应用程序中的服务器错误.Service 'WcfServiceApp.WCFService' has zero application (non-infrastructure) endpoints. This might be because no configuration file w

WCF分布式开发常见错误解决(5)

WCF分布式开发常见错误解决(5)Could not find a base address that matches scheme WCF分布式应用开发,托管宿主配置终结点错误:找不到匹配式样http的基地址, Could not find a base address that matches scheme http for the endpoint with binding MetadataExchangeHttpBinding. Registered base address schem

WCF分布式开发常见错误解决(4)

WCF分布式开发常见错误解决(4):The type or namespace name 'DataContract' could not be found DataContract找不到 我们进行WCF项目开发,自己定义数据契约的时候会出现这样的错误: DataContract.DataMember.DataMemberAttribute找不到,如图: The type or namespace name 'DataContract' could not be found (are you m

WCF分布式开发常见错误解决(2)

WCF分布式开发常见错误解决(2)无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接 我们添加客户端服务引用的时候会出现这样的错误: 下载"http://localhost:8002/WCFService"时出错. 基础连接已经关闭: 接收时发生错误. 无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接.. 远程主机强迫关闭了一个现有的连接. Metadata contains a reference that cannot be resolved: 'http:/