簡體   English   中英

墓碑wp7如何保存Enum…和其他unkwon對象

[英]Tombstone wp7 how save Enum… and other unkwon object

當我在wp7(C#)中保存一個包含Enum類型的變量時,我收到異常,其含義是enum是未知類型,因此系統無法序列化。

例如

public enum videoType:int {
       LongVideo=1,
      ShortVideo }

or

public enum video
{

       LongVideo,ShortVideo
}


 _videoType = videoType.ShortVideo 


PhoneApplicationService.Current.State["myType"]

有人告訴我使用Datacontract和數據成員,但在wp7中似乎不可用

那么如何保存枚舉類型呢?

頁面激活后,您將必須將Enum值另存為整數,並從整數重置為正確的Enum值。

[讀取保存的整數值並設置正確的枚舉值。 查找Enum.Parse / Enum.TryParse]

您也可以在Josh Smith的文章http://www.codeproject.com/KB/WPF/WPFJoshSmith.aspx?msg=3766336 [WPF]中查看由Josh Smith實現的EnumValueToDescription Converter屬性。

http://www.michaelsnow.com/2010/12/25/how-to-convert-an-enum-to-its-string-value/

DataContract和DataMember最絕的 WP7的所有版本。

您不需要將int指定為祖先類型,因為int是默認的祖先類型。

public enum videoType  
{
  LongVideo = 1,
  ShortVideo, 
}

由於您可以使用簡單的轉換將int轉換為基於int的枚舉,因此建議將其轉換為int以保存並轉換回枚舉以進行加載。

請參見以下答案: 如何將枚舉值序列化為int?

暫無
暫無

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

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