首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FaultContract<T> -这是什么意思?

FaultContract<T> -这是什么意思?
EN

Stack Overflow用户
提问于 2014-10-30 16:24:38
回答 1查看 87关注 0票数 0

我应该创建返回用户数据的wcf服务,界面和DataContract如下所示:

代码语言:javascript
复制
[ServiceContract]
public interface IUserInfoProvider{
[FaultContract<UserNotFound>]
public UserInfo GetUserInfo(Guid userId)}

[DataContract]
public class UserInfo
{
     [DataMember] public Guid UserId { get; set; } 
     [DataMember] public bool? AdvertisingOptIn { get; set; } 
     [DataMember] public string CountryIsoCode { get; set; }
     [DataMember] public DateTime DateModified { get; set; }
     [DataMember] public string Locale { get; set; }
}

我没有用于服务请求(get、post)的特殊客户端,这些请求是从浏览器的fiddler或rest插件运行的。

请描述一下如何在我的例子中实现FaultContract<>,我见过FaultContract(typeof(UserNotFound))的例子,但从未见过FaultContract<>

EN

回答 1

Stack Overflow用户

发布于 2016-08-24 00:19:15

很抱歉回答得太晚了,但我遇到了类似的问题,我想分享我的发现:

FaultContract是可能的:https://msdn.microsoft.com/en-us/library/ff650547.aspx

来自MSDN:

为了支持自定义错误的使用,

服务使用FaultContractAttribute来正式指定可以从服务操作返回的错误。FaultContractAttribute中指定的类型必须可序列化为DataContract、SerializableAttribute或ISerializable。当使用FaultContract中定义的自定义错误抛出FaultException时,客户端应用程序也可以使用FaultException泛型类型捕获这些特定的错误。

示例:

代码语言:javascript
复制
throw new FaultException<InvalidNameFault>(fault, "Invalid Name!");
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26648127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档