簡體   English   中英

<string xmlns=''>在 c# 中沒有預料到

[英]<string xmlns=''> was not expected in c#

大家好,我正在嘗試序列化 xml 中的值。 每次我得到<string xmlns=''>在 c# 中都不是預期的無法找到根本原因請幫助我。

namespace CustomDataType.usercontrols
    {
        public partial class CustomDataTypes : System.Web.UI.UserControl, umbraco.editorControls.userControlGrapper.IUsercontrolDataEditor
        {
        private Status _umbval;
        public object value
        {
            get
            {
                var status = GetStatus();
                return SerializationHelper.ValueToXmlString(status);
            }
            set
            {
                //if (value == null || string.IsNullOrEmpty(value.ToString()))
                //{
                //    _umbval = Status.Empty;
                //}
                //else
                //{
                    _umbval   =(Status)SerializationHelper.ValueFromXmlString(value,typeof(Status));
                //}
            }
        }
    }
    }

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Xml.Serialization;

    namespace CustomDataType
    {
        [Serializable]
        [XmlRoot("StatuMain")]
        public class Status
        {
                [XmlElement("statusvalue")]
                public string StatusValue { get; set; }

                [XmlElement("statusvalue1")]
                public string StatusValue1 { get; set; }

                [XmlElement("statusvalue2")]
                public string StatusValue2 { get; set; }

                [XmlElement("statusvalue3")]
                public string StatusValue3 { get; set; }

                //[XmlElement("isEmailChecked")]
                //public bool HasEmailChecked { get; set; }

                //[XmlElement("datetime")]
                //public DateTime Date { get; set; }

                public static Status Empty 
                {
                    get
                    {
                        var schedule = new Status();
                        schedule = null;
                        return schedule;
                    }
                }
        }
    }

我認為你應該使用 XmlNamespaceManager 來設置一個空的命名空間,而不是 xmlns ..

http://msdn.microsoft.com/en-us/library/d6730bwt(v=vs.80).aspx

XmlNamespaceManager nsmanager = new XmlNamespaceManager(reader.NameTable);
nsmanager.AddNamespace("", "");
YourSeraializationMethod(reader);

暫無
暫無

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

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