このクラスのオブジェクトをシリアライズしているとき:
[DataContract]
internal class Settings
{
[DataMember]
public List<string> AllowedEmails { get; set; }
}
出力としてこの XML を取得しました。
<?xml version="1.0" encoding="utf-8"?>
<Settings xmlns="http://schemas.datacontract.org/2004/07/Commands.Settings">
<AllowedEmails xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>asdsada</d2p1:string>
<d2p1:string>asdsada</d2p1:string>
</AllowedEmails>
</Settings>
xmlns="http://schemas.datacontract.org/2004/07/Commands.Settings"
名前空間とを取り除く方法はありますxmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"
か?
私はこれを行うことで d2p1 名前空間を削除できることを知っています:
public Settings()
{
[DataMember]
public AllowedEmails AllowedEmails { get; set; }
}
[CollectionDataContract]
public class AllowedEmails : List<string>
{
public AllowedEmails()
{
}
}
しかし、もっとエレガントなソリューションがあるのではないでしょうか?