簡體   English   中英

WEB Api沒有將枚舉發送給客戶端

[英]WEB Api not sending Enum to client

我從“ BaseSync”類繼承了一個類“ ApplicationSetting”,該類又從“ BaseEntity”類繼承了。 以下是我的課程結構。

 [DataContract(Namespace = HelpersServiceModel.DefaultUriNamespace)]
 public class ApplicationSetting : BaseSyncEntity 
 {
    [DataMember]
    public string SettingKey { get; set; }
 }



 [DataContract(Namespace = HelpersServiceModel.DefaultUriNamespace)]
 public abstract class BaseSyncEntity : BaseEntity
 {

 }
 [DataContract(Namespace = HelpersServiceModel.DefaultUriNamespace)]
 public abstract class BaseEntity : ICloneable, IComparable, IEntityState,        INotifyPropertyChanged, IDataErrorInfo
 {
    [DataMember(EmitDefaultValue = false)] 
    public Nullable<int> Id
    {
        get
        {
            return _id;
        }
        set
        {
            SetProperty(ref _id, value);  
        }
    }
    [DataMember(EmitDefaultValue = false)]
    public EntityState EntityState
    {
        get { return _entityState; }
        set { _entityState = value; }
    }

 }

現在的問題是,每當我在瀏覽器中檢查我的類json對象時。 我沒有得到EntitySate的Enum屬性? 有什么原因嗎? 我正在獲取所有其他屬性,例如SettingKey和Id,但我根本沒有獲取Enum。

我的枚舉類結構如下

public enum EntityState
    {
        /// <summary>
        /// The Business Entity is unchanged and no action needs to be taken on it.
        /// </summary>
        Unchanged,

        /// <summary>
        /// The Business Entity has been created and has not been inserted into the database.
        /// </summary>
        Added,

        /// <summary>
        /// The Business Entity has been changed and requires updating in the database.
        /// </summary>
        Changed,

        /// <summary>
        /// The Business Entity has been marked for removal from the database.
        /// </summary>
        Removed
    }

您需要將ENUM定義為數據合同。

像下面的事情。

[DataContract(Name = "CarCondition")]
public enum CarConditionWithNumbers
{
    [EnumMember]
    New = 10,

    [EnumMember]
    Used = 20,

    [EnumMember]
    Rental = 30,
}

請參閱以下鏈接。

http://msdn.microsoft.com/en-us/library/aa347875.aspx

也有其他幾個例子。

http://beyondrelational.com/modules/2/blogs/48/posts/10065/enumeration-in-datacontract-of-wcf.aspx

http://dotnetmentors.com/wcf-datacontract-with-enum-example.aspx

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM