Diskuze: dynamické vytvoření instancí tříd z xml souboru
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Jména instance dynamicky nevytvoříš.
Jediné co mě napadá je Dictionary<string, ClassFromXml>.
kdyz si pohrajes se serializaci tak muzes napsat:
[XmlRoot("objects")]
public partial class Data
{
[XmlElementAttribute("instance")]
public InnerData[] Instance { get; set; }
}
public partial class InnerData
{
[XmlElement("instancename")]
public string InstanceName { get; set; }
[XmlElement("name")]
public string Name { get; set; }
[XmlElement("surname")]
public string Surname { get; set; }
}
a pak se to ovlada pres:
var serializer = new XmlSerializer(typeof (Data));
var deserializedData=serializer.Deserialize(new StringReader(inputString)) as Data;
var emptyNS = new XmlSerializerNamespaces();
emptyNS.Add("", "");
var stringWriter = new StringWriter();
serializer.Serialize(stringWriter, deserializedData, emptyNS);
var outputString = stringWriter.ToString();
Dictionary<string, InnerData> dictionary = deserializedData.Instance.ToDictionary(o => o.InstanceName);
InnerData instance1 = dictionary["inst1"];
Zobrazeno 3 zpráv z 3.