久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

WCF中的自定義集合...

 miky 2008-06-05

WCF中的自定義集合

WCF Tips之一

集合元素類的定義如下:
    public enum FileType
    {
        TXT,DOC,HTML,OTHER
    }
    [DataContract]
    
public class Document
    {
        
private string m_localPath;
        
private string m_fileName;
        
private FileType m_fileType;        

        [DataMember]
        
public string LocalPath
        {
            
get { return m_localPath; }
            
set { m_localPath = value; }
        }

        [DataMember]
        
public string FileName
        {
            
get { return m_fileName; }
            
set { m_fileName = value; }
        }
        [DataMember]
        
public FileType FileType
        {
            
get { return m_fileType; }
            
set { m_fileType = value; }
        }

    }

自定義集合DocumentList則實現(xiàn)了IList<Document>接口:

注意,,對于自定義集合DocumentList而言,,我們不能應(yīng)用[DataContract]特性,,否則會在服務(wù)操作中無法返回正確的DocumentList對象,。例如如下的服務(wù)操作定義,,實際上無法獲得正確的DocumentList值:
        [OperationContract]
        [FaultContract(
typeof(DirectoryNotFoundException))]
        DocumentList FetchDocuments(
string homeDir);

我們應(yīng)該為DocumentList施加[CollectionDataContract]或者[Serializable],,建議采用前者,。因為對于自定義集合而言,,如果是泛型集合,,還可以利用Name屬性制定導(dǎo)出元數(shù)據(jù)生成的類型名。不過,,對于本例的集合而言,,由于沒有泛型參數(shù),則無所謂了,。為了在導(dǎo)出元數(shù)據(jù)時識別集合的元素Document類型,,當然,還需要施加KnowTypeAttribute,,最后的定義修改如下:
    [KnownType(typeof(Document))]
    [CollectionDataContract]  
    [Serializable]
    
public class DocumentList:IList<Document>
    {}

此時,,客戶端應(yīng)用程序可以直接使用數(shù)據(jù)契約,仍然能夠識別,。

posted on 2007-11-02 16:06 張逸 閱讀(2054) 評論(3)  編輯 收藏 所屬分類: WCF & SOA ,、WCF

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多