Dinamik olarak (codedom kullanarak) oluşturulan bir tür dizisi almak için XML'imi dizine ayırmaya çalışıyorum ve daha sonra bu montajı yüklemek için yansıma kullanıyorum ve yükleme türünü yüklemek istiyorum. dinamik olarak oluşturulur. XML'imi (bu dinamik olarak oluşturulmuş türde nesnelerin bir koleksiyonunu içeren) serileştirmeyi denediğimde, türü serileştiriciye nasıl vereceğimden emin değilim.Dinamik bir tür için seri hale getirme nasıl yapılır
Benim kod örneği:
Assembly assembly = Assembly.LoadFile("myDynamicassembly.dll");
Type type = assembly.GetType("myDynamicType");
string xmlstring = myXml.OuterXml.ToString();
byte[] buffer = ASCIIEncoding.UTF8.GetBytes(xmlstring);
MemoryStream ms = new MemoryStream(buffer);
XmlReader reader = new XmlTextReader(ms);
myDynamicType[] EQs;
XmlSerializer serializer = new XmlSerializer(typeof(myDynamicType[]));
EQs = (myDynamicType[])(serializer.Deserialize(reader));
Yani, burada sorun kod yazarken ben "myDynamicType" bilmiyorum olmasıdır. Çalışma zamanında oluşturulacak ve derlenecek.
LütfenYardım edin.
derleme zamanında türlerini biliyor musunuz sağa senin
object[] EQs
dönüştürmek için kazanılanType
kullanmak artıkve:
Eğer
object[] EQs
bir kez dönüştürmek için bir başka yolu şudur Yine de, tamamen bilinmeyen montajları mı yüklüyorsunuz? Bu nesneleri nasıl kullanacaksınız? –Hayır, derleme zamanında türü bilmiyorum. Aslında, çalışma zamanında bir derleme oluşturulacak ve derlenecek. Yani, benim derlememin yanı sıra 'myDynamicType' bölümümün derleme zamanında tamamen bilinmediğini söyleyebilirsin. Daha fazla kullanım söz konusu olduğunda, bu diziyi bu koleksiyonda bir operasyon yürütecek olan web servisime ileteceğim. – tavier